如何从Foursquare获取访问令牌?
问题描述:
我使用我的客户端ID和重定向URI从此直接网址获取代码; https://foursquare.com/oauth2/authenticateclient_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI如何从Foursquare获取访问令牌?
但我不能与其他服务做到这一点。我必须将此服务嵌入到我的Java应用程序中,然后获取访问令牌。我可以使用这个不同的选项,如果有另一种方式你知道获取访问令牌。你能帮我吗?
答
的Foursquare docs穿行的过程很详细。有2个选项:
- Web应用程序的代码流
- Web应用程序标记流程
这两个选项都需要您设置通过Foursquare Developer site的应用程序。您需要为Foursquare重新定向重定向网址。这通常是可公开访问的网址,但locahost
网址也适用于测试目的。
第一,代码流,遵循标准的OAuth过程:
-
直接用户(通常通过一个链接或按钮来完成)至
https://foursquare.com/oauth2/authenticate?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI`
-
如果用户接受,它们将被重定向回
https://YOUR_REGISTERED_REDIRECT_URI/?code=CODE
-
您的服务器交换它在步骤2中为访问令牌获取的代码。 ,以请求
https://foursquare.com/oauth2/access_token?client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET&grant_type=authorization_code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI&code=CODE
-
的响应将是JSON
{ access_token: ACCESS_TOKEN }
此访问令牌是你在找什么。
第二种方法,令牌流是稍微容易:
-
谁愿意来验证
https://foursquare.com/oauth2/authenticate?client_id=CLIENT_ID&response_type=token&redirect_uri=YOUR_REGISTERED_REDIRECT_URI
-
如果用户接受重定向用户,他们将被重定向回
https://YOUR_REGISTERED_REDIRECT_URI/#access_token=ACCESS_TOKEN
这个access_token
查询参数是你要找的。
你的意思是你没有实质性的服务器代码? –
应该有oauth java库来帮助你解决这个问题。如果你只需要这个令牌一次,你可以使用像Postman这样的工具 –
我需要java源代码来为社交apis生成访问令牌 - etc foursquare –