.net AjAx跨域访问,WinForm 中使用WebBrowser,模拟服务器端
vb.net 模拟网站服务器. 在程序中 使用 AjAx 出现了跨域问题.
因为 程序中 WebBrowser 只是用来显示内容,而 通信由 Winform来完成. 所以 AjAx 第一次发送请求 是 自发的 "OPTIONS"
需要 在服务器端加入如下 httpheader
Rpe.AddHeader("Access-Control-Allow-Origin", "*")
Rpe.AddHeader("Access-Control-Allow-Credentials", "true")
Rpe.AddHeader("Access-Control-Allow-Methods", "GET,POST,OPTIONS")
Rpe.AddHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With,Accept, Authorization,Content-Type,SessionID")
Rpe.AddHeader("Access-Control-Max-Age", "1800")
Rpe.AddHeader("Allow", "OPTIONS, GET, POST,HEAD")
否则 浏览器端 会自动的 不再继续 发送请求.
而且 再之后的 链接 连接 回复中也要加入
Rpe.AddHeader("Access-Control-Allow-Origin", "*")
否则就还会提示
“No 'Access-Control-Allow-Origin' header is present on the requested resource”
也就是 新的链接 都要加入 允许跨域的说明.