将 Ajax 与 Cookie 一起使用
Posted
技术标签:
【中文标题】将 Ajax 与 Cookie 一起使用【英文标题】:Using Ajax with Cookies 【发布时间】:2011-09-03 00:51:59 【问题描述】:我正在尝试为我的网站创建一个与 Imgur 集成的拖放界面。问题是我正在尝试将 ajax 与 cookie 一起使用。我无需登录即可使用它,但我需要将图片放在我的帐户下。从理论上讲,我的代码应该可以工作,但实际上由于某种原因,ajax 请求/cookie 无法正常工作。我究竟做错了什么?谢谢:D
我的代码:http://jsfiddle.net/msm595/9arFd/ 我的用户名和密码不在其中(尽管我一直在使用虚拟帐户进行测试)。
【问题讨论】:
【参考方案1】:https://developer.mozilla.org/en/http_access_control#Requests_with_credentials
您正在使用跨域加凭据。然后服务器必须响应:
Access-Control-Allow-Origin: http://jsfiddle.net/msm595/9arFd/
而不是:
Access-Control-Allow-Origin:*
在这种情况下不允许使用通配符。 您可能想使用 Chrome 进行测试,它会显示两个标题并给我以下消息:
XMLHttpRequest cannot load http://api.imgur.com/2/signin. Cannot use wildcard in Access-Control-Allow-Origin when credentials flag is true.`
我只能这么说,imgur 必须明确允许您的 JS 解决方案。您可能需要在服务器端运行一段没有跨域问题的代码。
【讨论】:
以上是关于将 Ajax 与 Cookie 一起使用的主要内容,如果未能解决你的问题,请参考以下文章
将 Cookie 与 Retrofit 和 Hilt 以及推荐的架构一起使用
什么时候应该将 cookie-parser 与 express-session 一起使用?
如何将 window.fetch() 与 httpOnly cookie 或基本身份验证一起使用
将 fetch 与 Express、React、cors、cookie 一起使用 - “Access-Control-Allow-Origin”标头