关于新浪微博与腾讯微博从Oauth1.0升级到Oauth2.0的过程
下载地址~ http://download.csdn.net/detail/zhangnianxiang/4375685 新浪微博 曾经@微博API 新浪那边表示 旧版的Oauth 1.0a将在不久的2012.9.1号停止。这个是一个很苦的消息。意味着涉及微博的都要修改。 Oauth2.0相比较于Oauth1.0的话 流程少了很多,其中
下载地址~
http://download.csdn.net/detail/zhangnianxiang/4375685
新浪微博
曾经@微博API 新浪那边表示 旧版的Oauth 1.0a将在不久的2012.9.1号停止。这个是一个很苦逼的消息。意味着涉及微博的都要修改。
Oauth2.0相比较于Oauth1.0的话 流程少了很多,其中一点就是签名。之前都是用signpost这个开源项目辅助。现在完全可以去掉了
好吧。废话不说了。
新浪微博Oauth2.0认证的官方说明
http://open.weibo.com/wiki/Oauth2
简单步骤:1获取code 2获取accessToken 3使用accessToken访问api
新浪的这份授权机制还是比较详细。理解起来比较容易
接口 | 说明 |
---|---|
OAuth2/authorize | 请求用户授权Token |
OAuth2/access_token | 获取授权过的Access Token |
OAuth2/get_oauth2_token | OAuth1.0的Access Token更换至OAuth2.0的Access Token |
步骤1http://open.weibo.com/wiki/Oauth2/authorize
获取code
请求参数
必选 | 类型及范围 | 说明 | |
---|---|---|---|
client_id | true | string | 申请应用时分配的AppKey。 |
redirect_uri | true | string | 授权回调地址,站外应用需与设置的回调地址一致,站内应用需填写canvas page的地址。 |
response_type | false | string | 返回类型,支持code、token,默认值为code。 |
state | false | string | 用于保持请求和回调的状态,在回调时,会在Query Parameter中回传该参数。 |
display | false | string | 授权页面的终端类型,取值见下面的说明。 |
-
https://api.weibo.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REGISTERED_REDIRECT_URI
Nach dem Login kopieren
- 值得注意的是这边的redirect_uri 必须与 申请的应用那边设置(高级设置里面)的回调地址一致。否则就会出现 error:redirect_uri_mismatch.
-
- 这是网页载入授权界面,用户填完账号密码之后按下确定
- 服务器将返回一个“回调地址+code=xxxxx”的URL(如果是腾讯微博还有openid和openkey等等)
- 把code是步骤2的关键
-
- 步骤2
- 获取accessToken
-
-
API https://api.weibo.com/oauth2/access_token
- 将code等参数 以POST传给服务器将返回
-
-
{ "access_token": "ACCESS_TOKEN", "expires_in": 1234, "remind_in":"798114", "uid":"12341234" }
Nach dem Login kopieren
- 这些数据都是要做数据持久化管理的。
- 腾讯微博返回稍有不同,但是并不影响
-
- 步骤3
- 访问API
-
-
-
- 研究中遇到的一些问题
- 1.腾讯微博 那群脑残的腾讯微博把appke和secret变成 ClientID和ClientSecret
-
-
oAuth.setClientId(StatcParame.T_CONSUMER_KEY);
oAuth.setClientSecret(StatcParame.T_CONSUMER_SECRET); -
- 下面直接贴源码了
-
- 1
- sina
- webview承载授权页面的设置
-
web=(WebView)findViewById(R.id.web); web.getSettings().setJavaScriptEnabled(true); web.getSettings().setSupportZoom(true); web.getSettings().setBuiltInZoomControls(true); web.setWebViewClient(new WebViewC());
Nach dem Login kopierenWebviewClient
Nach dem Login kopierenclass WebViewC extends WebViewClient{ @Override public void onPageStarted(WebView view, String url, Bitmap favicon) { super.onPageStarted(view, url, favicon); Log.v("aaa", "===onPageStarted==="+url); if(url.contains("code=")){ try { Intent intent = new Intent(Oauth2Activity.this,MainActivity.class); Uri uri = Uri.parse(url); String code = uri.getQueryParameter("code"); String openid =uri.getQueryParameter("openid"); String openkey=uri.getQueryParameter("openkey"); editor.putString(StatcParame.T_OPEN_ID, openid); editor.putString(StatcParame.T_OPEN_KEY, openkey); HttpClient httpclient=MyCountHttpClient.getNewHttpClient(); URI accessToken = null; List<namevaluepair> parameters=new ArrayList<namevaluepair>(); //必须编码,否则无法向服务器发送微博 if(codeFlag==1){ parameters.add(new BasicNameValuePair("client_id", StatcParame.S_CONSUMER_KEY)); parameters.add(new BasicNameValuePair("client_secret", StatcParame.S_CONSUMER_SECRET)); parameters.add(new BasicNameValuePair("redirect_uri", StatcParame.S_CALLBACK)); accessToken = URI.create(StatcParame.S_API_access_token); intent.putExtra("mode", 1); }else if(codeFlag ==2){ parameters.add(new BasicNameValuePair("client_id", StatcParame.T_CONSUMER_KEY)); parameters.add(new BasicNameValuePair("client_secret", StatcParame.T_CONSUMER_SECRET)); parameters.add(new BasicNameValuePair("redirect_uri", StatcParame.T_CALLBACK)); accessToken = URI.create(StatcParame.T_API_access_token); intent.putExtra("mode", 2); } parameters.add(new BasicNameValuePair("grant_type", "authorization_code")); parameters.add(new BasicNameValuePair("code", code)); HttpPost post=new HttpPost(accessToken); HttpResponse response=null; post.setEntity(new UrlEncodedFormEntity(parameters ,HTTP.UTF_8) ); post.getParams().setBooleanParameter(CoreProtocolPNames.USE_EXPECT_CONTINUE, false); response = httpclient.execute(post); if(codeFlag==1){ JSON.GetOauth(sharedpre,Utils.getResponseText(response)); }else if(codeFlag==2){ String tempUrl = StatcParame.T_CALLBACK+"?"+Utils.getResponseText(response); Uri temp = Uri.parse(tempUrl); String access_token = temp.getQueryParameter("access_token"); String expires_in=temp.getQueryParameter("expires_in"); String name=temp.getQueryParameter("name"); editor.putString(StatcParame.T_ACCESS_TOKEN, access_token); editor.putString(StatcParame.T_EXPIRES_IN, expires_in); editor.putString(StatcParame.T_NAME, name); editor.commit(); } startActivity(intent); Oauth2Activity.this.finish(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } </namevaluepair></namevaluepair>
Nach dem Login kopieren
这个方法集合了sina和tencent的处理
这步走完就拿到ACCESSTOKEN了
下面贴个发布微博的方法
SINA发送一个带图片的微博
<span>Weibo weibo = Weibo.getInstance(); AccessToken accessToken = new AccessToken(shared.getString(StatcParame.S_ACCESS_TOKEN, ""), StatcParame.S_CONSUMER_SECRET); accessToken.setExpiresIn(shared.getString(StatcParame.S_EXPIRES_IN, "")); weibo.setAccessToken(accessToken); weibo.setupConsumerConfig(StatcParame.S_CONSUMER_KEY, StatcParame.S_CONSUMER_SECRET); weibo.setRedirectUrl("http://www.sina.com.cn"); try { String msg = URLEncoder.encode(body, HTTP.UTF_8); WeiboParameters bundle = new WeiboParameters(); bundle.add("status", msg); bundle.add("pic", "/sdcard/1.jpg"); String rlt = ""; String url = Weibo.SERVER + "statuses/upload.json"; Utility.setAuthorization(new Oauth2AccessTokenHeader()); rlt = weibo.request(context, url, bundle, Utility.HTTPMETHOD_POST, weibo.getAccessToken()); Toast.makeText(context, rlt, 1000).show(); Log.v("aaa","Successfully upload the status to ["+ rlt+ "]."); return "OK"; } catch (Exception e1) { e1.printStackTrace(); }</span>
Nach dem Login kopieren
TENCent发送一条微博
OAuthV2 oAuth =new OAuthV2(); oAuth.setAccessToken(shared.getString(StatcParame.T_ACCESS_TOKEN, "")); oAuth.setOauthVersion("2.a"); oAuth.setClientIP("117.25.173.11"); oAuth.setOpenid(shared.getString(StatcParame.T_OPEN_ID, "")); oAuth.setOpenkey(shared.getString(StatcParame.T_OPEN_KEY, "")); oAuth.setClientId(StatcParame.T_CONSUMER_KEY); oAuth.setClientSecret(StatcParame.T_CONSUMER_SECRET); try { TAPI api = new TAPI("2.a"); String respone = api.add(oAuth, "json","abcc","117.25.173.11","","","0"); Toast.makeText(context, respone, 1000).show(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }
Nach dem Login kopieren
源码之后上传。
联系 zhangnianxiang@gmail.com

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



1. Öffnen Sie zunächst den mobilen Webbrowser, suchen Sie nach der Weibo-Webversion und klicken Sie nach der Eingabe auf die Avatar-Schaltfläche in der oberen linken Ecke. 2. Klicken Sie dann oben rechts auf Einstellungen. 3. Klicken Sie in den Einstellungen auf die Option zum Versionswechsel. 4. Wählen Sie dann im Versionsschalter die Option Farbversion aus. 5. Klicken Sie auf Suchen, um die Suchseite aufzurufen. 6. Klicken Sie nach der Eingabe der Schlüsselwörter auf „Personen suchen“. 7. Wenn die Suchabschlussoberfläche angezeigt wird, klicken Sie auf Filter. 8. Geben Sie abschließend das konkrete Datum in die Spalte „Veröffentlichungszeit“ ein und klicken Sie auf „Filter“.

Am 30. Mai kündigte Tencent ein umfassendes Upgrade seines Hunyuan-Modells an. Die auf dem Hunyuan-Modell basierende App „Tencent Yuanbao“ wurde offiziell eingeführt und kann in den App-Stores von Apple und Android heruntergeladen werden. Im Vergleich zur Hunyuan-Applet-Version in der vorherigen Testphase bietet Tencent Yuanbao Kernfunktionen wie KI-Suche, KI-Zusammenfassung und KI-Schreiben für Arbeitseffizienzszenarien. Yuanbaos Gameplay ist außerdem umfangreicher und bietet mehrere Funktionen für KI-Anwendungen , und neue Spielmethoden wie das Erstellen persönlicher Agenten werden hinzugefügt. „Tencent strebt nicht danach, der Erste zu sein, der große Modelle herstellt.“ Liu Yuhong, Vizepräsident von Tencent Cloud und Leiter des großen Modells von Tencent Hunyuan, sagte: „Im vergangenen Jahr haben wir die Fähigkeiten des großen Modells von Tencent Hunyuan weiter gefördert.“ . In die reichhaltige und umfangreiche polnische Technologie in Geschäftsszenarien eintauchen und gleichzeitig Einblicke in die tatsächlichen Bedürfnisse der Benutzer gewinnen

1. Klicken Sie unten rechts in der Weibo-App auf [Mein], um Ihre persönliche Homepage aufzurufen. 2. Klicken Sie dann auf das Zahnradsymbol in der oberen rechten Ecke. 3. Zu diesem Zeitpunkt rufen wir die Einstellungsseite auf. Wählen Sie hier [Blockeinstellungen] aus, um sie aufzurufen. 4. In den Blockierungseinstellungen können wir die von uns blockierten Freunde sehen, darauf tippen und in den Popup-Optionen auf [Entsperren] klicken. 5. Oder Benutzer können direkt nach Weibo-Benutzern suchen, um die blockierte Benutzer-Homepage aufzurufen, und oben rechts auf [...] klicken, um die schwarze Liste zu entfernen.

1. Öffnen Sie zunächst Weibo, klicken Sie auf „Mein“ und dann auf das Entwurfsfeld. 2. Drücken Sie dann lange auf einen Entwurf und klicken Sie, um das Entwurfsfeld zu leeren oder den Entwurf zu löschen. 3. Klicken Sie abschließend auf OK.

1. Öffnen Sie zunächst Weibo, klicken Sie auf „Suchen“ und dann auf „Weitere aktuelle Suchanfragen“. 2. Wählen Sie dann eine Schnellsuche zur Eingabe aus. 3. Rufen Sie dann den Live-Modus für Hot Search-Kommentare auf, suchen Sie die Standardversion in der oberen rechten Ecke und klicken Sie darauf. 4. Abschließend können Sie zum Standard-Kommentarbereich der Hot-Suche zurückkehren. Wenn Sie weiterhin den Live-Kommentarbereich anzeigen möchten, klicken Sie auf die Live-Version in der oberen rechten Ecke. Hinweis: Nur wenn viele Echtzeitkommentare vorhanden sind, wird automatisch in den Live-Modus gewechselt. Einige Hot-Suchen gelangen automatisch in den Live-Modus. Im Allgemeinen finden Direktsuchen im Standardmodus statt.

1. Öffnen Sie zunächst Weibo auf Ihrem Mobiltelefon und klicken Sie unten rechts auf [Ich] (wie im Bild gezeigt). 2. Klicken Sie dann oben rechts auf [Zahnrad], um die Einstellungen zu öffnen (wie im Bild gezeigt). 3. Suchen und öffnen Sie dann [Allgemeine Einstellungen] (wie im Bild gezeigt). 4. Geben Sie dann die Option [Video Follow] ein (wie im Bild gezeigt). 5. Öffnen Sie dann die Einstellung [Video-Upload-Auflösung] (wie im Bild gezeigt). 6. Wählen Sie abschließend [Originalbildqualität] aus, um eine Komprimierung zu vermeiden (wie im Bild gezeigt).

Sobald Weibo-Benutzer die SVIP-Funktion aktivieren, können sie Besucherdatensätze verwalten. Wenn sie die Homepage eines Fremden besuchen, können sie diese vor der Anzeige löschen, sodass sie nicht wissen, dass sie auf der Homepage surfen. Kann die andere Partei sie trotzdem sehen? Kann die andere Partei es nach dem Löschen des Besucherdatensatzes auf Weibo Svip noch sehen? die Anzahl der Besucher, die ID und der Avatar des Besuchers werden jedoch nicht angezeigt. 2. Normale Benutzer und VIP-Benutzer können Zugriffsdatensätze nicht löschen oder anzeigen. Sie können nur sehen, wie viele Personen sie besucht haben. 3. Die Weibo-Zugriffsdaten werden täglich um 8:00 Uhr aktualisiert. Wenn Sie Zugriffsdatensätze löschen möchten, müssen Sie dies tun

Am 21. Juni fand erneut die Huawei Developer Conference 2024 (HDC2024) in Songshan Lake, Dongguan, statt. Das Auffälligste an dieser Konferenz ist, dass HarmonyOSNEXT offiziell die Betaversion für Entwickler und Pionierbenutzer startet und die drei „königsbrechenden“ innovativen Funktionen von HarmonyOSNEXT in allen Szenarien, nativer Intelligenz und nativer Sicherheit umfassend demonstriert. Native Intelligenz von HarmonyOSNEXT: Beginn einer neuen KI-Ära Nach der Abkehr vom Android-Framework ist HarmonyOSNEXT zu einem wirklich unabhängigen Betriebssystem unabhängig von Android und iOS geworden, was als beispiellose Wiedergeburt bezeichnet werden kann. Unter den vielen neuen Funktionen ist native Intelligenz zweifellos die neue Funktion, die den Benutzern am besten intuitive Gefühle und Erfahrungsverbesserungen vermitteln kann.
