gpt4 book ai didi

javascript - 如何从 Angular JS 中的 HttpResponse 中提取 JSON 数据?

转载 作者:行者123 更新时间:2023-11-27 23:32:48 27 4
gpt4 key购买 nike

我正在发送一个 JSON Http 响应,如下所示,在 Web API 中,JSON 数据存在于响应中。内容

HttpResponseMessage response = new HttpResponseMessage(HttpStatusCode.OK);
var LoginDetailsResponse = new LoginDetails { LoginToken = "Token" , LoginDescription = "Desc" };
response.Content =
new ObjectContent<LoginDetails>(LoginDetailsResponse,
new JsonMediaTypeFormatter(), new MediaTypeWithQualityHeaderValue("application/json"));
return response;

以 JSON 格式发送的对象是:

public class LoginDetails
{
public string LoginToken { get; set; }
public string LoginDescription { get; set; }
}

以下是我用来发送请求并提取 JSON 内容的 Angular js 代码:

var Submit = function() {

var httpResponseRef = $http({
url: 'http://wycvwetebx056.com:81/',
method: "GET"
});

httpResponseRef.then(successloginCallBackRef, errorloginCallBackRef, notifyCallbackRef);


};

// when it is a success it call's successloginCallBackRef function

var successloginCallBackRef = function(httpLoginResponseMessage) {

var status = httpLoginResponseMessage.status;
var response = httpLoginResponseMessage.data; // returns everything as a string type.
};

但是httpLoginResponseMessage.data没有按预期返回数据,它似乎包含以下内容。

"StatusCode: 200, ReasonPhrase: 'OK', Version: 1.1, Content: System.Net.Http.JsonContent[LoginDetails.LoginDetailsResponse], Headers:
{
Content-Type: application/json; charset=utf-8
}"

我可以看到我有 json 内容,但我不知道如何在使用 Angular js 时提取它。

最佳答案

为什么不依靠内置方法来处理内容协商。

public HttpResponseMessage Login()
{
var s = new LoginDetails { LoginToken = "read from somehere"};
return Request.CreateResponse(HttpStatusCode.OK, s);
}

这将向您的 Angular http 调用返回一个 JSON 结构。您可以在成功回调中读取 data 属性,它将是一个 js 对象,您可以在其中访问 LoginToken 属性。

var successloginCallBackRef = function(response) {

var status = response.status;
var d = response.data;
console.log(d.LoginToken);
};

关于javascript - 如何从 Angular JS 中的 HttpResponse 中提取 JSON 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34402046/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com