什么是跨源请求

Ado*_*dis 3 cors

所以我一直试图通过服务器代理将我的javascript webapp连接到github的API(隐藏client_secret)但我注意到虽然我可以发出HTTP请求(GET,POST等),但我无法通过我的Web应用程序.服务器位于以下URL中:http://mydomain.com:3000我的webapp位于http://mydomain.com.当我尝试使用JQuery $.ajax来做一个时POST,我收到以下错误:

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://mydomain.com' is therefore not allowed access.
Run Code Online (Sandbox Code Playgroud)

所以我的问题是对不同端口但在同一域名中的请求是否被视为跨源请求

mon*_*sur 8

是的,对同一主机但在不同端口上的请求被视为跨源请求.

术语"交叉起源"中的"起源"被定义为URL的方案,主机和端口.例如,在网址https://mydomain.com:3000/foo/bar中,方案为"https",主机为"mydomain.com",端口为"3000".

为了使请求成为同源请求,源(也称为方案,主机和端口)必须匹配.所有其他请求都被视为跨域请求.维基百科有一个很棒的表格,显示了相同和跨源请求的示例:http://en.wikipedia.org/wiki/Same-origin_policy#Origin_determination_rules