angularjs 如何跨域?

用的localhost地址想向dribbble请求数据

报出
XMLHttpRequest cannot load https://api.dribbble.com/v1/shot. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access. The response had HTTP status code 404.

只感觉是跨域的问题.. 请问 该如何解决.

他给了Client ID, Client Access Token..不知道该如何使用..... 求解答QAQ

阅读 4.9k
5 个回答

...我没用过angularjs但是看了一下它的请求也是基于XMLHttpRequest那么怎么能够跨域呢?想要跨域请直接找axjx跨域的方法。

你可以用node转发请求

那个域跟你localhost是不同域,所以才提示你这个error。有两种做法,让后台开cors,设置这个头Access-Control-Allow-Origin: *表示允许来自所有域的请求。或者用JSONP,或者找其他解决办法

你报错的信息里面显示你是想从localhost去访问api.dribbble.com
这是两个不同的域,所以有跨域的问题.
使用CROS的方法:
在api.dribbble.com的php文件header里面设置Access-Control-Allow-Origin: *,就可以允许所有的域访问了。
但是这样做存在安全问题,推荐你在本地配置一个环境,用host把一个测试域名例如test.dribbble.com指向本地
然后在php文件的header里面设置这个测试域名可以访问Access-Control-Allow-Origin: "test.dribbble.com"
这样test.dribbble.com就可以访问api.dribbble.com了

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