No 'Access-Control-Allow-Origin' header is present on the requested resource

1.问题性质

这是一个跨域问题

2.解决办法

1.服务端修改
在请求里增加权限如下,本人用的filter方式,

define

/**
 * Created by cqs on 16-6-17.
 */
public class CORSFilter extends GenericFilterBean {
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        HttpServletRequest request = (HttpServletRequest) servletRequest;
        HttpServletResponse response = (HttpServletResponse) servletResponse;
        response.setHeader("Access-Control-Allow-Origin","*");
        filterChain.doFilter(request,response);
    }
}

config

    <!--filter-->
    <filter>
        <filter-name>corsFilter</filter-name>
        <filter-class>com.cqs.bishe.filter.CORSFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>corsFilter</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

2.请求端修改
ajax举例 dataType jsonp,不了解的可以百度下更多使用方法,个人只提供思路

         $.ajax({
             type : "get",
             async:false,
             url : "ajax.ashx",
             dataType : "jsonp",
             jsonp: "callbackparam",//传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(默认为:callback)
             jsonpCallback:"success_jsonpCallback",//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名
             success : function(json){
                 alert(json);
                 alert(json[0].name);
             },
             error:function(){
                 alert('fail');
             }
         });
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值