Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
<img src="//i.stack.imgur.com/WM7S8.png" height="16" width="18" alt="" class="sponsor tag img">servicestack ServiceStack Cors_<img Src="//i.stack.imgur.com/WM7S8.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">servicestack_Cors - Fatal编程技术网 servicestack ServiceStack Cors,servicestack,cors,servicestack,Cors" /> servicestack ServiceStack Cors,servicestack,cors,servicestack,Cors" />

servicestack ServiceStack Cors

servicestack ServiceStack Cors,servicestack,cors,servicestack,Cors,我正在建设一个项目,并希望实施CORS。它安装在共享IIS服务器共享主机上 在我的apphost.cs中,我根据在web上找到的几篇文章启用和配置CORS Plugins.Add(new CorsFeature( allowedMethods: "GET, POST, PUT, DELETE, OPTIONS", allowedOrigins: "*", allowCredentials: true, allowedHeaders: "content

我正在建设一个项目,并希望实施CORS。它安装在共享IIS服务器共享主机上

在我的apphost.cs中,我根据在web上找到的几篇文章启用和配置CORS

Plugins.Add(new CorsFeature(
     allowedMethods: "GET, POST, PUT, DELETE, OPTIONS", 
     allowedOrigins: "*", 
     allowCredentials: true, 
     allowedHeaders: "content-type, Authorization, Accept"));
我还了解到,在实现较新的SS API iSeries设备时,我必须为“选项”调用提供一个挂钩,因此我添加了

this.RequestFilters.Add((httpReq, httpRes, requestDto) =>
{
     //Handles Request and closes Responses after emitting global HTTP Headers
     if (httpReq.HttpMethod == "OPTIONS")
         httpRes.EndRequest();  //add a 'using ServiceStack;'
     });
我可以通过REST控制台chrome插件调用我的api,但是当我使用ajax请求调用时,我得到一个405错误

Request URL:http://empire.thecodingpit.com/api/engine
Request Method:OPTIONS
Status Code:200 OK

Request Headers view source
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Access-Control-Request-Headers:accept, origin, content-type
Access-Control-Request-Method:POST
Connection:keep-alive
Host:empire.thecodingpit.com
Origin:http://json.commublogs.com
Referer:http://json.commublogs.com/
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko)                  Chrome/29.0.1547.66 Safari/537.36
Response Headers view source
Cache-Control:private
Content-Length:0
Date:Thu, 26 Sep 2013 17:00:59 GMT
Server:Microsoft-IIS/8.0
X-AspNet-Version:4.0.30319
X-MiniProfiler-Ids:  ["f8c3ddb8434149feb689dd44d93bf862","6d0e7e0f8ac1456d98872a82af4d6602","67bdf08a19c641a7b26db0b43fd10888","1819b1ce3e314c0594ef9ecb1ac68fcf","7af8595373e345f3a9f8ade60c8a7817"]
X-Powered-By:ASP.NET
我对我的方法还没有任何[身份验证]

如上图所示,我已经研究并实现了它。这一相关问题并非重复

我正在拨打的服务电话是

public object Post(SelectedTroops request)
{
     return new SelectedTroopsResponse { ArrayOfSelectedTroops = request.ArrayOfSelectedTroops };

}
如果我遗漏了任何可能有用的东西,请告诉我。我想一个附带的问题可能是-如何有效地跟踪和调试这样的东西?任何有用的提示都将不胜感激。

您必须使用:

httpRes.EndRequest();
重要的是,它是ServiceStack命名空间中的一个名称。我建议使用诸如ReSharper之类的工具,这使得自动查找和引用扩展方法变得很简单。

您必须使用:

httpRes.EndRequest();

重要的是,它是ServiceStack命名空间中的一个名称。我建议使用诸如ReSharper之类的工具,这使得自动查找和引用扩展方法变得微不足道。

mythz回答关于,您也可以阅读mythz回答关于,您也可以阅读