Google app engine GAE weapp2访问控制允许原点错误

Google app engine GAE weapp2访问控制允许原点错误,google-app-engine,python-2.7,google-api,webapp2,Google App Engine,Python 2.7,Google Api,Webapp2,我在使用webapp2用户身份验证时遇到此错误。请求的资源上不存在“Access Control Allow Origin”标头 如何在重定向之前添加访问标头 重定向代码: self.redirect(users.create\u login\u url(self.request.uri)) 代码: 在调用self.redirect之前,请执行以下操作 self.response.headers['Access-Control-Allow-Origin'] = '*' 或者,无论您希望为该标头

我在使用webapp2用户身份验证时遇到此错误。请求的资源上不存在“Access Control Allow Origin”标头

如何在重定向之前添加访问标头

重定向代码:
self.redirect(users.create\u login\u url(self.request.uri))

代码:


在调用
self.redirect
之前,请执行以下操作

self.response.headers['Access-Control-Allow-Origin'] = '*'
或者,无论您希望为该标头设置什么值--
self.redirect
默认情况下会生成一个新的响应对象,但您可以使用

return self.redirect(users.create_login_url(self.request.uri,
                     response=self.response)

因此,我认为应该将第二个调用为(如果希望传递响应对象):


请参阅

我仍然得到了错误。我检查了网络日志上的请求头,但没有看到“访问控制允许来源”。可能这行代码没有任何效果?不,即使在添加了
self.request.headers['Access-Control-Allow-Origin']='*'
,这也不起作用。我没有收到任何“Access-Control-Allow-Origin”头错误。头没有显示在网络日志中。还有其他方法吗?对不起,我把请求和响应弄混了--现在编辑了A。
TypeError:redirect()得到了一个意外的关键字参数“response”
您是否试图用ajax请求将用户重定向到登录页面?这是没有道理的。GAE web app2文档说这样做。但我仍然得到
XMLHttpRequest无法加载https://www.google.com/accounts/ServiceLogin?service=ah&passive=true&contin…WbQ。请求的资源上不存在“Access Control Allow Origin”标头。起源'https://xxx.appspot.com因此,不允许访问。
错误。为什么?我有办法解决我的问题。我认为在客户端,您对触发后端代码中处理程序的URL进行了ajax调用,可能是ajax('/login')?不要这样做,而是执行window.location='/login',这也会触发处理程序,但不会是跨源访问。
return self.redirect(users.create_login_url(self.request.uri,
                     response=self.response)
 def redirect(self, uri, permanent=False, abort=False, code=None,body=None)
def redirect(uri, permanent=False, abort=False, code=None, 
                                         body=None,request=None, response=None)
return webapp2.redirect(users.create_login_url(self.request.uri),True,False,None
                                                       ,None,None,self.response)