在aws eb上的django graphql后端api中未设置corss域登录问题sessionid cookie

在aws eb上的django graphql后端api中未设置corss域登录问题sessionid cookie,django,cookies,amazon-elastic-beanstalk,apollo,graphene-django,Django,Cookies,Amazon Elastic Beanstalk,Apollo,Graphene Django,我已成功地在aws eb上设置了一个django graphene应用程序,但存在跨域身份验证问题。 登录在同一个域上工作,但当尝试从跨域登录时,它不工作 使用基于会话的身份验证(Cookies) 我的django graphql api位于url上,类似于: 当我从失眠症(类似于邮递员)登录时,登录就起作用了。这是我收到的答复 日期:2019年11月28日星期四06:36:39 GMT 服务器:Apache/2.4.41(Amazon)mod_wsgi/3.5 Python/3.6.8 变化:

我已成功地在aws eb上设置了一个
django graphene
应用程序,但存在跨域身份验证问题。 登录在同一个域上工作,但当尝试从跨域登录时,它不工作

使用基于会话的身份验证(Cookies)

我的django graphql api位于url上,类似于:

当我从失眠症(类似于邮递员)登录时,登录就起作用了。这是我收到的答复

日期:2019年11月28日星期四06:36:39 GMT
服务器:Apache/2.4.41(Amazon)mod_wsgi/3.5 Python/3.6.8
变化:曲奇,起源
X-Frame-Options:SAMEORIGIN
设置Cookie:csrftoken=1ftnbwp8b3olvf1nxzqztwbozka1xh4ihryptvzetrzj3od5mhn3tdxfhgfvgl9;expires=周四,2020年11月26日06:36:39 GMT;最大年龄=31449600;路径=/;SameSite=Lax
设置Cookie:sessionid=vv9e1o2m92ekwcaq8xhzoedf9uhues4u;expires=2019年12月12日星期四06:36:39 GMT;HttpOnly;最大年龄=1209600;路径=/;SameSite=Lax
内容长度:190
内容类型:application/json
当用户登录时,它会工作

在前端,我使用的是
gatsby
apollo
。前端当前正在上运行。 这是我的阿波罗客户:

从“apollo boost”导入apollo客户端
从“同构获取”导入{fetch}
const客户端=新客户端({
uri:“http://foo.bar.elasticbeanstalk.com/graphql/",
证书:“包括”,
取来
})
导出默认客户端
当我执行登录时,未设置任何
sessionid
cookie。也没有
csrftoken

登录响应:

访问控制允许凭据:true
访问控制允许来源:http://localhost:3000
连接:保持活力
内容长度:271
内容类型:application/json
日期:2019年11月28日星期四07:39:06 GMT
保持活动状态:超时=5,最大=99
服务器:Apache/2.4.41(Amazon)mod_wsgi/3.5 Python/3.6.8
设置Cookie:csrftoken=tvuvu46thorlkgyfoj5g2ybj6bt6osahqqrcmcynjnajybfxo0z7agd16nuzm4vn;expires=周四,2020年11月26日07:39:06 GMT;最大年龄=31449600;路径=/
设置Cookie:sessionid=qmze273tr6srktooa7t0y2n9vfyt408h;expires=2019年12月12日星期四07:39:06 GMT;HttpOnly;最大年龄=1209600;路径=/
变化:曲奇,起源
X-Frame-Options:SAMEORIGIN
响应中有
csrftoken
sessionid
Set Cookie
,但
Application->cookies->http://localhost:3000

My
django cors头的设置为:

SESSION\u COOKIE\u SAMESITE=None
CSRF\u COOKIE\u SAMESITE=无
CORS_原产地_白名单=[
'http://localhost:3000',
'http://127.0.0.1:3000'
]
CORS\u允许\u凭据=(
真的
)
url.py:

从django.url导入路径
从django.views.decorators.csrf导入csrf_豁免
从graphene_django.views导入GraphQLView
URL模式=[
路径('graphql/',csrf_豁免(GraphQLView.as_视图(graphiql=True)),
]

如何让登录工作?

我今天使用Django-GraphQL-Next.js时遇到了同样的问题。你知道吗?@J博士我无法设置跨域cookie。我开始使用jwt身份验证时使用了Django-GraphQL-Next.js,今天我遇到了同样的问题。你知道吗?@J博士我无法设置跨域cookie。我开始使用jwt身份验证