我正在按照本教程在 Web 表单网站中构建我的第一个 Asp.net Web API,但我遇到了一个问题。我创建了两个项目:
- 用于定义 Web 服务的 宿主项目
- 使用 Web 服务的客户端项目。
现在我的问题是,如果我使用 web 浏览器导航到我的 web api URL,http://localhost:39930/api/products/
那么这将完美运行,并且根据浏览器返回 XML 或 Json 数据。
但是,如果我在客户端网站中使用 Web 服务 URL,则不会返回任何内容!
以下是我从客户端网站调用 Web 服务的方式:
<table>
<thead>
<tr>
<th>Name</th>
<th>Price</th>
</tr>
</thead>
<tbody id="products">
</tbody>
</table>
<script type="text/javascript">
function getProducts() {
$.getJSON("http://localhost:39930/api/products",
function (data) {
$('#products').empty(); // Clear the table body.
// Loop through the list of products.
$.each(data, function (key, val) {
// Add a table row for the product.
var row = '<td>' + val.Name + '</td><td>' + val.Price + '</td>';
$('<tr/>', { text: row }) // Append the name.
.appendTo($('#products'));
});
});
}
$(document).ready(getProducts);
</script>
这是萤火虫中请求的快照:
请注意,响应为空。
那么,我在这里做错了吗?是否应该添加一些配置以允许远程调用服务?
提前致谢。