浏览器开发工具里发出的 HTTP 请求, 还有本地发出的请求, 跨域问题怎样理解

写了小工具, 放到 Github Pages 上边, 结果有跨域的限制无法获取 Github API 的数据..
只能在 Chrome 看这个问题: http://jiyinyiyong.github.com/github-...

刚开始, 我在本地.. (没有域名的当然)写的测试代码, 这时, HTTP 请求是能获取到的,
而且我看 API 的 Response, 也没有写允许跨域的什么什么内容对吧..
这个时候跨域问题怎样理解?

然后我的代码里暴露了 get 方法, 可以用法向参数传进去的路径发送请求的..
这是我发送了一个请求, 发现 Origin 被认为是当前所在的网站了,
按这样想, 比如我访问新浪微博, 那不是可以从控制台手动模拟请求了?
这样我想应该是一个漏洞了呀, 这是不是也需要防范?

阅读 6.5k
2 个回答

不太明白你的意思,可以参考下在之前在http://segmentfault.com/q/10100000001...的答案。
很多网站的api都是使用JSONP来实现的,和直接的ajax返回json数据略有不同。在设计这样的允许跨域的api的时候就是要想好那些可以用哪些不能。
在本地的时候可以实现,这个倒是没有留意过,继续等待其他人的回答。
祝好运。

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