如何跨域发送 POST 请求?

一个面试题目

Send an HTTP POST request with JSON to https://app.close.io/hackwithus/ with the following string fields: ‘first_name’, ‘last_name’, ‘email’, ‘phone’, and ‘cover_letter’, as well as ‘urls’ which should be a a list with any URLs you’d like to share with us (e.g. resume, github, side projects, twitter, etc.). Be sure that you receive a 200 OK and paste the returned 'id' here. If you get a 403 then try again without sending any Cookie header.

我遇到一个跨域的问题,或者只是前端 jQuery 是不够的?
求高手指导~

补充1: 我没办法控制客户端的服务器(我找到的答案都是客户端服务器可以控制的),客户端服务器也是不提供任何可以调用的 callback 函数

补充2: 我试了直接在浏览器的 console 中提交数据,不过返回的是 400 错误:(
clipboard.png

阅读 6.8k
4 个回答

ajax请求的话 服务端必须添加响应头access-control-allow-origin

你先在浏览器打开https://app.close.io/hackwithus/这个地址,再打开控制台写XMLHttpRequest,就不是跨域了。

这种问题,会用搜索引擎的可以在几分钟内就知道答案

除了access-control-allow-origin之外,还有jsonp

=============== 更新 ======================

没看清楚题目,看到一大堆英文就下意识忽略了……

题目里面其实只是说对这个url发起一个附带了json的post操作,那其实也不需要浏览器里面用js来搞,直接用curl构造一个请求就得了,就是一个常规的http请求而已,只要你不用js搞,就不存在跨域的问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进