尝试使用Facebook测试用户login_url的404错误

梅德蒙兹

如果我以编程方式创建Facebook测试用户login_url则新用户的无效。提取login_url会返回404错误。

精简示例(在Python中)。最后两行是出现问题的地方:

import requests
from urlparse import parse_qs
APP_ID = "<Facebook App ID>"
APP_SECRET = "<Facebook Client Secret>"

# Get app access token - this works
response = requests.get('https://graph.facebook.com/oauth/access_token',
                        params={'grant_type': "client_credentials",
                                'client_id': APP_ID, 'client_secret': APP_SECRET})
app_access_token = parse_qs(response.content)['access_token'][0]

# Create test user - this works
response = requests.post('https://graph.facebook.com/%s/accounts/test-users' % APP_ID,
                         data={'access_token': app_access_token, 'installed': "true"})
test_user = response.json()
login_url = test_user['login_url']
print login_url  # http://developers.facebook.com/checkpoint/test-user-login/...

# Get cookied for login - see https://stackoverflow.com/a/5370869/647002
session = requests.Session()
session.get("https://www.facebook.com/", allow_redirects=True)

# Login test user - THIS FAILS
response = session.get(login_url)
print response.status_code  # 404

其他人指出,必须首先获取Facebook主页,然后测试用户的login_url才能起作用。我们遇到了同样的问题,我在上面没有任何运气就包括了这种解决方法。[编辑:添加了_fb_noscript=1查询参数,对于非JavaScript测试客户端,参数将于2015年中开始。] [编辑8/2017:现在已删除_fb_noscript=1不再需要,并设置一个noscriptcookie,cookie使以后的某些FB身份验证请求返回500。]

我还尝试直接在浏览器中打开login_url:

  • 如果我不是已经登录到Facebook上,我得到一个通用的Facebook的404页。
  • 如果我已经登录到开发人员帐户,Facebook警告我将以平台测试用户身份登录,然后允许我登录到测试用户帐户。

最后一点似乎可以确认正在正确创建测试用户,并且我具有正确的login_url。但是,当然,这对自动化测试没有帮助。(我们不想运行登录到我的开发者帐户的测试。)

有没有其他方法可以将测试用户的login_url用于自动化测试?

梅德蒙兹

Facebook的开发者支持工程师已经证实,测试用户login_url不再能用于测试用户自动登录,出于安全性的变化。显然,它是用于手动测试的。

,但是,能够通过张贴到Facebook的正常登录形式,实现了编程方式创建的Facebook测试用户自动登录。似乎您所需要的只是从create-test-user API返回的电子邮件和密码。(尽管您仍然需要先提取Cookie,但似乎不需要其他登录表单字段。)

下面的代码现在对我有用(替换原始问题中的最后两行“此失败”代码):

# Login test user - THIS WORKS
response = session.post("https://www.facebook.com/login.php",
                        data={'email': test_user["email"],
                              'pass': test_user["password"]})
print response.status_code  # 200

我在任何地方都找不到此文档,Facebook将来可能会更改其登录形式,因此YMMV。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试使用Facebook测试用户login_url的404错误

来自分类Dev

尝试使用Facebook Graph API访问测试用户时出现“不支持的获取请求”

来自分类Dev

尝试使用Facebook Graph API访问测试用户时出现“不支持的获取请求”

来自分类Dev

使用facebook graph API来获取应用程序用户仅返回测试用户

来自分类Dev

使用RSpec测试用户密码更新

来自分类Dev

使用Mockito的JUnit测试用户输入

来自分类Dev

使用 Hspec 测试用户输入

来自分类Dev

iOS-Facebook应用测试用户-发布操作

来自分类Dev

iOS-Facebook应用测试用户-发布操作

来自分类Dev

Facebook应用:自动添加登录的用户作为测试用户

来自分类Dev

使用RSpec测试用户身份验证

来自分类Dev

应用内购买只允许测试用户使用吗?

来自分类Dev

无法使用设备上的沙盒测试用户登录

来自分类Dev

使用MiniTest测试用户模型(Devise身份验证)

来自分类Dev

Django无法使用UserFactory登录测试用户

来自分类Dev

Django测试用户密码

来自分类Dev

与Apple测试用户登录

来自分类Dev

freeradius测试用户无法通过解析错误(回复)进行条目测试:预期的行尾或逗号

来自分类Dev

是否可以从测试页面创建Facebook测试商品,其中包含来自测试用户的50多个赞?

来自分类Dev

是否可以从测试页面创建Facebook测试要约,其中包含来自测试用户的50多个赞?

来自分类Dev

[Facebook Graph API]:如何获取具有特定范围的测试用户访问令牌

来自分类Dev

在Facebook应用程序中必须有测试用户吗?

来自分类Dev

Facebook的ProfilePictureView是否为测试用户返回默认的个人资料图片?

来自分类Dev

Apache Mod Rewrite规则给出404错误-尝试用于创建Web API

来自分类Dev

Django测试不会接受测试用户

来自分类Dev

尝试创建Rally测试用例时出现错误“ RallyRESTAPIError:422无权执行操作:无效的密钥”

来自分类Dev

尝试用茉莉花测试角度控制器-错误

来自分类Dev

尝试在 php 中使用 .htaccess 创建漂亮的 url 时出现错误 404

来自分类Dev

Facebook取消了URL 404并欢迎使用Nginx错误[Ningx + PHP-FPM]

Related 相关文章

  1. 1

    尝试使用Facebook测试用户login_url的404错误

  2. 2

    尝试使用Facebook Graph API访问测试用户时出现“不支持的获取请求”

  3. 3

    尝试使用Facebook Graph API访问测试用户时出现“不支持的获取请求”

  4. 4

    使用facebook graph API来获取应用程序用户仅返回测试用户

  5. 5

    使用RSpec测试用户密码更新

  6. 6

    使用Mockito的JUnit测试用户输入

  7. 7

    使用 Hspec 测试用户输入

  8. 8

    iOS-Facebook应用测试用户-发布操作

  9. 9

    iOS-Facebook应用测试用户-发布操作

  10. 10

    Facebook应用:自动添加登录的用户作为测试用户

  11. 11

    使用RSpec测试用户身份验证

  12. 12

    应用内购买只允许测试用户使用吗?

  13. 13

    无法使用设备上的沙盒测试用户登录

  14. 14

    使用MiniTest测试用户模型(Devise身份验证)

  15. 15

    Django无法使用UserFactory登录测试用户

  16. 16

    Django测试用户密码

  17. 17

    与Apple测试用户登录

  18. 18

    freeradius测试用户无法通过解析错误(回复)进行条目测试:预期的行尾或逗号

  19. 19

    是否可以从测试页面创建Facebook测试商品,其中包含来自测试用户的50多个赞?

  20. 20

    是否可以从测试页面创建Facebook测试要约,其中包含来自测试用户的50多个赞?

  21. 21

    [Facebook Graph API]:如何获取具有特定范围的测试用户访问令牌

  22. 22

    在Facebook应用程序中必须有测试用户吗?

  23. 23

    Facebook的ProfilePictureView是否为测试用户返回默认的个人资料图片?

  24. 24

    Apache Mod Rewrite规则给出404错误-尝试用于创建Web API

  25. 25

    Django测试不会接受测试用户

  26. 26

    尝试创建Rally测试用例时出现错误“ RallyRESTAPIError:422无权执行操作:无效的密钥”

  27. 27

    尝试用茉莉花测试角度控制器-错误

  28. 28

    尝试在 php 中使用 .htaccess 创建漂亮的 url 时出现错误 404

  29. 29

    Facebook取消了URL 404并欢迎使用Nginx错误[Ningx + PHP-FPM]

热门标签

归档