纸上得来终觉浅,绝知此事要躬行。

 

jQuery调用WCF REST遇到的问题

昨天当我写好一个WCF REST服务之后使用jQuery AJAX调用。结果报了一个错,大致内容如下:

  Origin is not allowed by Access-Control-Allow-Origin.

这个错误是告诉我们这个WCF REST服务返回的Content-Type没有找到Access-Control-Allow-Origin.知道原因了,那么我们就需要为这个WCF REST服务添加这个Content-Type。下面是解决方案:

// 为WCF REST服务中的返回对象添加Content-Type
public void AddHeader()
{
    WebOperationContext.Current.OutgoingResponse.Headers.Add("Access-Control-Allow-Origin", "*");
}

然后在WCF REST服务中的每个契约的实现中调用此函数。

参考:http://wcf.codeplex.com/discussions/283419

  http://stackoverflow.com/questions/4875195/problem-sending-json-data-from-jquery-to-wcf-rest-method

  http://www.petefreitag.com/item/703.cfm

posted on 2012-07-10 10:02  JRoger  阅读(1171)  评论(0编辑  收藏  举报

导航