简体   繁体   中英

Get user information in Twitter API using bearer token

I am using twitter API in my Laravel application. In my app I want to get user name and profile picture when user insert url by. I searched lot but couldn't found. For user info I had to make user login to twitter and connect with my app for access token. I want to use App authorization only so user don't need to login twitter. I found that with Bearer token tweets can be search with this search API

https://api.twitter.com/1.1/search/tweets.json?q=twitterapi

Is there any API's that I can get User screen name using URL?

I know there may be posts that are similar with this, most answers with usl says "This page doesn't exists" or saying to use Oauth.

Thanks in advance.

Ah, I was so lazy to read whole documentation.
Here is everything about App-only authentication. All you need to do is firstly encode consumer key and secret in RFC 1738 and then re-encode them in

Base64 "RFC-1738-encoded-consumer-key:RFC-1738-encoded-consumer-secret"

format. You will get bearer token credentials like

eHZ6MWV2RlM0d0VFUFRHRUZQSEJvZzpMOHFxOVBaeVJnNmllS0dFS2hab2xHQzB2SldMdzhpRUo4OERSZHlPZw== this.

Now you all you need to do is get bearer token with post request with

https://api.twitter.com/oauth2/token?grant_type=client_credentials this URL.

Be sure to set header with

Authorization: Basic bearer-token-credentials
Content-Type: application/x-www-form-urlencoded
Content-Length: 29 

and you will get Bearer Token in json format.

Now with every request, just send this bearer token in header like

Authorization: Bearer bearer-token

and you can get data which doesn't require user authentication. For example, if you want to get User data by screen name or id, just send post request in https://api.twitter.com/1.1/users/show.json?screen_name= URL. 发送帖子请求URL。

I hope I understand you. The user gives you the URL twitter.com/edent and you want to get the name and avatar from that without using the API. Right?

For the avatar, you can cheat and use https://avatars.io .

Call https://avatars.io/twitter/edent and you'll get my avatar image.

Sadly, there's no way to get the name without using the API. You could try scraping the HTML, but Twitter may change how that work.s

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM