【发布时间】:2015-12-30 06:57:00
【问题描述】:
我开始使用 Polymer,尤其是使用 iron-ajax 从 ASP.Net WebAPI 服务中检索 JSON 数据。我可以调用该服务,但无法获取该服务返回的结果。
这是我的 Iron-ajax 元素:
<iron-ajax auto
url="http://local.webapi2.com/api/values"
headers='{ "Key": "d72ad080-e3dd-43ea-ba95-0cd2a5a58bb1" }'
handle-as="json"
content-type="application/json"
method='GET'
verbose="true"
on-response="handleResponse"></iron-ajax>
这是我的 handleResponse 函数:
handleResponse: function (jsonFromServer)
{
console.log('response from server:', jsonFromServer);
}
这是我的 WebAPI 端点:
[RoutePrefix("api/values")]
public class ValuesController : ApiController
{
// GET api/values
[Route("")]
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2", "value3", "value4", "value5", "value6" };
}
}
我使用的是火狐浏览器。使用 Firebug 的 Net 选项卡,我可以看到对 http://local.webapi2.com/api/values 的调用,并且可以看到返回的结果:
["value1","value2","value3","value4","value5","value6"]
但是,在 Firebug 的控制台中,我只看到这个:
response from server: response
其中“response”是一个对象,似乎是有关“iron-ajax”元素本身的详细信息。预期结果数据永远不会显示在控制台中。此外,控制台中 WebAPI 调用的响应选项卡具有 null 作为值。控制台中 WebAPI 调用下的详细信息中甚至没有 JSON 选项卡。
我不确定为什么“网络”选项卡具有您所期望的完整和准确的结果,但是“控制台”选项卡无效并且我看到了一个“响应”对象。
我在 Chrome 中也遇到了同样的情况。
我错过了什么?是配置问题吗?感谢您的宝贵时间。
【问题讨论】:
标签: polymer polymer-1.0