AJAX STATUS=0

使用AJAX请求JAVA服务器,发现status=0,于是百度了下,是由于跨域引起的。

JAVA服务端解决代码如下:

public class CharacterEncodingFilter implements Filter {

	private String encoding;

	@Override
	public void destroy() {
		this.encoding = null;
	}

	@Override
	public void doFilter(ServletRequest arg0, ServletResponse arg1,
			FilterChain arg2) throws IOException, ServletException {
		// 设置编码
		arg0.setCharacterEncoding(encoding);

		// 解决前端请求跨域问题!
		HttpServletResponse httpResponse = (HttpServletResponse) arg1;
		httpResponse.setHeader("Access-Control-Allow-Origin", "*");
		httpResponse.setHeader("Access-Control-Allow-Methods",
				"POST, GET, OPTIONS, DELETE");
		httpResponse.setHeader("Access-Control-Max-Age", "3600");
		httpResponse.setHeader("Access-Control-Allow-Headers",
				"Origin,X-Requested-With,Content-Type, Accept, Authorization");
		httpResponse.setHeader("Access-Control-Allow-Credentials", "true");
		arg2.doFilter(arg0, httpResponse);

	}

	@Override
	public void init(FilterConfig arg0) throws ServletException {
		this.encoding = arg0.getInitParameter("encoding");
	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在`ajax`发送请求时,如果要同一个参数传多个值,可以将这些值存储在一个数组中,然后将该数组作为该参数的值传递。具体代码实现可以参考以下示例: ```javascript $.ajax({ url: 'https://example.com/api', type: 'GET', data: { status: ['Publish', 'Developing', 'Completed'] }, success: function(response) { console.log(response); }, error: function(error) { console.error(error); } }); ``` 在上述代码中,我们将要传递的参数`status`的值存储在一个数组中,然后将该数组作为该参数的值传递。这样就可以将参数值改成多个值的形式了,同时在 URL 中的拼接样式也是`status=Publish&status=Developing&status=Completed`。 需要注意的是,如果使用 POST 方法发送请求,需要将 data 的值转换为 JSON 字符串,然后设置请求头的 Content-Type 为 application/json,具体代码实现可以参考以下示例: ```javascript $.ajax({ url: 'https://example.com/api', type: 'POST', contentType: 'application/json', data: JSON.stringify({ status: ['Publish', 'Developing', 'Completed'] }), success: function(response) { console.log(response); }, error: function(error) { console.error(error); } }); ``` 在上述代码中,我们将要传递的参数`status`的值存储在一个数组中,然后将该数组作为对象的值传递,并使用`JSON.stringify`方法将数据转换为字符串,并设置请求头的 Content-Type 为 application/json。这样就可以将参数值改成多个值的形式了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值