博客
关于我
跨域ajax请求中的cookie传输问题
阅读量:683 次
发布时间:2019-03-17

本文共 689 字,大约阅读时间需要 2 分钟。

CORS中的cookie传输问题简述

跨域资源共享(CORS)是一项常用的技术,允许浏览器向跨源服务器发起XMLHttpRequest请求,克服AJAX的同源限制。在处理CORS中的cookie传输问题时,需要特别注意以下几点:

  • 服务端测试与配置

    • 首先,确保服务端正确配置Access-Control-Allow头部。两项关键头部是:
      • Access-Control-Allow-Credentials: true:表明服务器支持cookie传输。
      • Access-Control-Allow-Origin: http://a.com:指定允许的域名。
    • 测试时,使用var_dump($_COOKIE);验证cookie是否被正确设置。
  • 客户端设置

    • 在jQuery的ajax请求中,设置xhrFields={withCredentials:true}。这将允许浏览器携带目标域名的cookie。
    • 不要在服务端修改withCredentials,因为这会影响跨域请求的有效性。
  • cookie的域名限制

    • 测试发现,a.com向b.com发起的请求只携带b.com的cookie。a.com自身设置的cookie不会被传回。
    • 如果服务端设置有误,可能导致cookie无法正确传输。
  • 控制台验证

    • 在浏览器控制台中检查document.cookie,确认是否有目标域名的cookie被携带。
    • 无法看到预期的cookie可能是因为服务端设置不当或客户端没有正确配置。
  • 通过以上步骤,可以确保在跨域情况下正确传输cookie。如果问题依旧,请检查服务端设置和浏览器请求头,确保所有配置正确且一致。

    转载地址:http://hiwhz.baihongyu.com/

    你可能感兴趣的文章
    openjudge 1792 迷宫 解析报告
    查看>>
    OpenJudge/Poj 1658 Eva's Problem
    查看>>
    Openlayers 9.0新功能
    查看>>
    openlayers controls基础知识
    查看>>
    Openlayers Draw的用法、属性、方法、事件介绍
    查看>>
    Openlayers Interaction基础及重点内容讲解
    查看>>
    Openlayers layer 基础及重点内容讲解
    查看>>
    Openlayers map三要素(view,target,layers),及其他参数属性方法介绍
    查看>>
    Openlayers Map事件基础及重点内容讲解
    查看>>
    Openlayers Overlay基础及重点内容讲解
    查看>>
    Openlayers Select的用法、属性、方法、事件介绍
    查看>>
    Openlayers Source基础及重点内容讲解
    查看>>
    Openlayers view三要素(zoom,center,projection)及其他参数属性方法介绍
    查看>>
    OpenLayers 入门使用
    查看>>
    Openlayers 入门教程(一):应该如何学习 Openlayers
    查看>>
    openlayers 入门教程(七):Interactions 篇
    查看>>
    openlayers 入门教程(三):view 篇
    查看>>
    openlayers 入门教程(九):overlay 篇
    查看>>
    openlayers 入门教程(二):map 篇
    查看>>
    openlayers 入门教程(五):sources 篇
    查看>>