0

为了编写一组集成(end-2-end)测试,我需要使用 Facebook OAuth 2.0 模拟用户登录。通过模拟请求/响应流,一切正常,但是我想知道是否有任何(简单)方法可以在“真实”世界中验证用户。

现在我正在考虑在 Facebook 上创建测试用户,然后使用 Apache HTTPClient 以使用登录名/密码对 Facebook 中的用户进行身份验证,然后保存 cookie 并在被要求这样做时模拟“单击”“允许”按钮。然而这是一种有点复杂和“硬”的方式,所以我正在寻找一些可用的库,或者可能是 Facebook 提供了一些带有假数据的“测试”令牌?

请指教。

4

1 回答 1

1

With help of Resty it is possible to solve the task and create test users (Scala):

val authToken = resty.text("https://graph.facebook.com/oauth/access_token?client_id=your_app_id" +
  "&client_secret=your_app_secret&grant_type=client_credentials")

val jsonResource: JSONResource = resty.json(
  "https://graph.facebook.com/your_app_id/accounts/test-users?installed=true&name=Abra+Kadabra&" +
    "locale=en_US&permissions=read_stream&method=post&access_token=" + URLEncoder.encode(accessToken.toString.split("=")(1)))

val token = URLEncoder.encode(jsonResource.get("access_token").asInstanceOf[String])

val userId = jsonResource.get("id").asInstanceOf[String]
于 2012-10-22T19:01:40.737 回答