从应用程序进行WEB Api调用

时间:2016-06-01 17:41:03

标签: asp.net ajax api asp.net-web-api

我几天前发布了这个question,我能够在本地环境中测试应用程序。

今天我在此location发布了API。出于某种原因,我能够在本地进行调用,例如:

});

在本地环境中工作正常,我能够正确保存数据。

但是当我将网址更改为

  

url:" http://web2.mindsetworks.com/api/Cage",

在ajax电话中,我无法到达任何地方。

在本地环境中,我在控制器声明之上启用了这行代码:

  

[EnableCors(来源:" http://localhost:15528",标题:" ",方法:   " &#34)]

我删除了那行代码,以便在线打开API。我是否还需要执行其他操作才能访问远程API?

由于

2 个答案:

答案 0 :(得分:0)

您似乎要两次添加路线

routes.Add(new Route
( "MS_attributerouteWebApi",
     "Category/{action}/{categoryName}"
     , new CategoryRouteHandler()
));

第二次,您在第128行添加

SSQ_Api.WebApiApplication.Application_Start() +128

答案 1 :(得分:0)

我假设您已将应用程序部署到域http://web2.mindsetworks.com/API的子目录。

这当然会导致您的Web API应用程序具有以下入口点:

http://web2.mindsetworks.com/API/api

您提到的控制器可通过此URI访问:

http://web2.mindsetworks.com/API/api/Cage

顺便说一句:如果您想为任何域允许CORS,您必须使用HttpConfiguration对象对其进行配置,并为其提供使用通配符的EnableCorsAttribute的默认实例:

var cors = new EnableCorsAttribute("*", "*", "*");
config.EnableCors(cors);