我在 Laravel 应用程序中使用 twitter API。在我的应用程序中,我想在用户插入 url 时获取用户名和个人资料图片。我搜索了很多但找不到。对于用户信息,我必须让用户登录 Twitter 并与我的应用程序连接以获取访问令牌。我只想使用 App 授权,这样用户就不需要登录 Twitter。我发现使用 Bearer 令牌推文可以使用此搜索 API 进行搜索
https://api.twitter.com/1.1/search/tweets.json?q=twitterapi
是否有任何 API 可以使用 URL 获取用户屏幕名称?
我知道可能有与此类似的帖子,usl 的大多数答案都说“此页面不存在”或说要使用 Oauth。
提前致谢。
啊,我懒得阅读整个文档。
这是有关仅应用程序身份验证的所有内容。您需要做的就是首先在 RFC 1738 中对消费者密钥和秘密进行编码,然后将它们重新编码为
Base64 "RFC-1738-encoded-consumer-key:RFC-1738-encoded-consumer-secret"
Run Code Online (Sandbox Code Playgroud)
格式。您将获得不记名令牌凭据,例如
eHZ6MWV2RlM0d0VFUFRHRUZQSEJvZzpMOHFxOVBaeVJnNmllS0dFS2hab2xHQzB2SldMdzhpRUo4OERSZHlPZw== 这个。
现在你需要做的就是通过 post 请求获取不记名令牌
https://api.twitter.com/oauth2/token?grant_type=client_credentials 这个网址。
一定要设置标题
Authorization: Basic bearer-token-credentials
Content-Type: application/x-www-form-urlencoded
Content-Length: 29
Run Code Online (Sandbox Code Playgroud)
您将获得 json 格式的 Bearer Token。
现在对于每个请求,只需在标头中发送此不记名令牌即可
Authorization: Bearer bearer-token
Run Code Online (Sandbox Code Playgroud)
并且您可以获得不需要用户身份验证的数据。例如,如果您想通过屏幕名称或 id 获取用户数据,只需在URL 中发送 post 请求。https://api.twitter.com/1.1/users/show.json?screen_name=here-comes-twitter-screen-name