vNext中的跨域API

时间:2014-08-11 07:59:24

标签: c# ajax asp.net-core asp.net-web-api2

我正在使用vNext,并尝试在asp.net vNext中创建一个web api。以下是我用来创建api的示例代码

 public class UserController : Controller
 {

 public IActionResult Get()
 {
 return Result.Json(new { message = "Valid" });
 }

 }

我可以直接在浏览器上访问此api,甚至可以通过ajax get request在同一域视图中访问此api,示例代码如下

 $.ajax({
 type: "GET",
 // Get the action URL
 url: "http://mydomainname/api/user",
 dataType: "json",
 success: function (data, textStatus, jqXHR) {
 alert(data.message);
 },
 error: function (jqXHR, textStatus, errorThrown) {
 alert(errorThrown);
 }
 });

但是,当我试图通过任何其他域或jfiddler访问此API时,它无法正常工作。

检查此jfiddler链接

http://jsfiddle.net/2r8wj62a/14/

我正在使用VS2014 CPT。

我错过任何东西......任何帮助都会受到赞赏。

提前致谢...!

1 个答案:

答案 0 :(得分:0)

beta.smallshiptravel.com在我结束时解析为ip 74.114.167.68。你的结局是否一样?

我已经尝试了这个链接,它正在返回:

HTTP/1.1 404 Not Found
Content-Type: text/html
Server: Microsoft-IIS/8.5
X-Powered-By: ASP.NET

所以看起来你在iis中运行并且没有找到iis返回。如果请求实际上是在iis服务器内部结束,或者另一台服务器(或反向代理)正在返回呼叫,我会检查iis日志。它最终会在你的服务器中,然后我会在我的代码中添加一些日志记录到每个请求,所以我可以看到我的代码实际上被调用。

HTH, 巴特