Javascript 在Chrome扩展中实现facebook登录
我正在尝试使用Facebook的Javascript SDK在Chrome扩展的Javascript 在Chrome扩展中实现facebook登录,javascript,facebook,google-chrome,google-chrome-extension,Javascript,Facebook,Google Chrome,Google Chrome Extension,我正在尝试使用Facebook的Javascript SDK在Chrome扩展的popup.html页面中实现一个登录按钮 但是,当我调用FB.login()函数时,我得到以下错误:应用程序配置不允许给定的URL。现在,由于它是一个Chrome扩展,我不确定是否可以为它提供URL或域 那么,在这种情况下我应该怎么做呢?您需要手动构建登录流,如下所述: 我也在为chrome扩展构建一个登录按钮,我遵循了这些说明。但是,每当我尝试访问时,我都会得到以下信息: “成功 “安全警告。请像使用密码一样使
popup.html
页面中实现一个登录按钮
但是,当我调用FB.login()
函数时,我得到以下错误:应用程序配置不允许给定的URL
。现在,由于它是一个Chrome扩展,我不确定是否可以为它提供URL或域
那么,在这种情况下我应该怎么做呢?您需要手动构建登录流,如下所述: 我也在为chrome扩展构建一个登录按钮,我遵循了这些说明。但是,每当我尝试访问时,我都会得到以下信息: “成功 “安全警告。请像使用密码一样使用上面的url,不要与任何人共享。”
这应该是正确的方法…但我不能让它工作。也许你可以。我还试图在我的chrome扩展中添加fb登录功能。我正在django应用中使用python socialauth作为facebook的身份验证应用,django应用是后端 我遵循的步骤如下所示: 首先,我打开了一个带有facebook登录链接的窗口: window.open(“&response\u type=token&redirect\u uri=,“Facebook登录”,“宽度=635,高度=290,左侧=0,顶部=0”) 从成功url中,我检索了访问令牌并保存在chrome本地存储中 然后我将令牌发送到我的django facebook登录视图。但它遇到了错误:
'Nonetype' object has no attribute 'encode'.
我的代码如下:
if isinstance(request.backend, BaseOAuth1):
if request.REQUEST.get('backend') == "facebook":
oauth_token_secret = settings.SOCIAL_AUTH_FACEBOOK_KEY
if request.REQUEST.get('backend') == "google-oauth2":
oauth_token_secret = settings.SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET
token = {
'oauth_token': request.REQUEST.get('access_token'),
'oauth_token_secret': oauth_token_secret,
}
elif isinstance(request.backend, BaseOAuth2):
token = request.REQUEST.get('access_token')
else:
raise HttpResponseBadRequest('Wrong backend type')
user = request.backend.do_auth(token, ajax=True)
# age = request.POST.get('age', '')
login(request, user)
我遇到错误的那一行是:
user=request.backend.do\u auth(令牌,ajax=True)是的,它可能重复。在应用程序设置的“高级”选项卡中,选择“是”本机或桌面应用程序?和
嵌入式浏览器OAuth登录
选项。我不断收到警告…但我设法在重定向到警告url之前手动检索令牌。重定向uri参数中应该放什么?