日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[SNS]Mixi

發布時間:2023/12/10 编程问答 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [SNS]Mixi 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

http://developer.mixi.co.jp/

提供流

下面是創建一個Mixi應用程序的流程圖。

[注冊]使用mixi網平臺

公司注冊認證合作伙伴,我們提供了一個應用程序使用的專用帳戶。
關于申請,我們要求您提交的登記和申請表的副本。
個人創建一個應用程序,需要注冊個人帳戶mixi網合作伙伴。
E-mail地址是必需的,如姓名,地址,注冊手機。
詳細說明請參考: http://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&rurl=translate.google.com.hk&sl=ja&tl=zh-CN&twu=1&u=http://developer.mixi.co.jp/about-platform/overview/&usg=ALkJrhgiE_rnRJkxPgkA0EJzRUzMVg46xg

[登錄應用]

帳號準備完成后,登錄你要開發的應用。
詳細步驟請參考: http://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&rurl=translate.google.com.hk&sl=ja&tl=zh-CN&twu=1&u=http://developer.mixi.co.jp/appli/com/lauch/register/&usg=ALkJrhhftLqsX4QBA7TDnYGolz3ldhUTKA

[分類發布申請]

發布做成的應用,必須創建應用程序分類
詳細步驟請參考: http://translate.googleusercontent.com/translate_c?depth=1&hl=zh-CN&rurl=translate.google.com.hk&sl=ja&tl=zh-CN&twu=1&u=http://developer.mixi.co.jp/appli/com/lauch/category_listing&usg=ALkJrhgpt5kD2aphNMUxfuvnRwpekMLZ3A

認證請求

概述

處理流程(1)從手機向mixi服務器發送HTTP請求(2)HTTP請求從mixi服務器被發送到SAP服務器,在這種情況下,SAP服務器發送以下信息。請求是以get、post方式,用post。這時,需要向SAP服務器傳遞APPID或者客戶ID等終端信息。(3)訪問Mixi的Graph API:通過Graph API可以獲得mixi社交網數據應用在開發的應用程序中。(4)API返回的數據:將返回ATOM或JSON形式的Mixi社交數據。(5)HTML文件的返回:將顯示在用戶手機畫面上的html返回。(6)發送到您的手機

可以利用的API
通過API可以獲取mixi個人用戶信息和相關好友的信息。
mixi Graph API提供詳細的說明請參考: http://developer.mixi.co.jp/connect/mixi_graph_api/

People API Groups API People lookup API Updates API Voice API Check API Photo API Message API Diary API Check-in API Profile Image API Persistence API Calendar API Page API

關于OAuth Signature的驗證方法

發送Authorization頭

這份文檔的目的展示了如何修改http請求來實現向Mixi API發送認證請求的過程 所有的MixiAPI都基于HTTP協議。這意味著你編寫的任何訪問MixiAPI的軟件,都會發送一系列結構化的信息到Mixi服務器。被發送到mixi服務器的HTTP頭信息如下(通常驗證頭信息應該在一行中,但是為了易讀性進行了換行) Authorization = OAuth realm="",oauth_consumer_key="mixiapp-web_xxxxx",oauth_nonce="9dc8fbca0e51842e7449",oauth_signature="Ky%2F6LlDHpHX1EZMRi5mfUl9vxqY%3D",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1254282755",oauth_version="1.0"

收集參數

你應該可以看到頭信息中包含6對鍵值,所有的鍵名以“oauth_”開頭。任何Mixi請求,都會收集這些組值,并且創建一個相似的頭信息,允許你為該請求指定認證信息。每一個值描述如下:

Consumer key

oauth_consumer_key 事先發行的consumer_key,標識哪一個應用程序生成請求。可以在應用程序管理界面https://sap.mixi.jp獲得這個值

Nonce

oauth_nonce參數是一個唯一的token值,應用程序應該為每一個請求生成它。會使用這個値來判斷是否一個請求被提交了多次。這個值以32字節隨機數據進行base64編碼生成,并且剔除所有非文字字符,但是任何方式生成相對隨機數的字符串都可以被接受。

Signature

oauth_signature參數包含一個值,該值以其他所有的請求參數和兩個密碼值進行簽名算法生成。
目的是Mixi可以判斷請求在傳輸中沒有被篡改,驗證應用程序發送的請求,驗證應用程序具有和用戶帳戶交互的權限。
運算oauth_signature的過程參考:http://developer.mixi.co.jp/appli/ns/mob/validate-oauth-signature/

Signature method

Mixi使用的oauth_signature_method是HMAC-SHA1。該值應該在所有的驗證過的請求中發送給Mixi API

Timestamp

oauth_timestamp參數標識請求何時被創建。這個值應該是從Unix紀元到請求被生成時點的秒數,在大多數的編程語言中都很好實現。Mixi會拒絕太久之前的請求,所以保證生成請求的計算機時鐘正確很重要。

Version

oauth_version參數應該一直是1.0。

OAuth Signature的生成方法

http://example.com/foo/?opensocial_app_id=123&opensocial_owner_id=xxxxxxxx例子如果以get請求被發送的時候,下面將解釋如何生成OAuth Signature。首先,為了生成基于字符串的署名而準備的值。1.HTTP請求方法2.請求URL。應排除查詢參數3.設置各種OAuth処理必要的參數。包含查詢參數。 例: 1.GET2.http://example.com/foo/3.oauth_consumer_key=mixiapp-web_xxxxx&oauth_nonce=9dc8fbca0e51842e7449&oauth_signature_method=HMAC SHA1&oauth_timestamp=1254282755&oauth_version=1.0&opensocial_app_id=123&opensocial_owner_id=xxxxxxxx 以上參數通過URI escape生成以下通過&連接的字符串 GET&http%3A%2F%2Fexample.com%2Ffoo%2F&oauth_consumer_key%3Dmixiapp-web_xxxxx %26oauth_nonce%3D9dc8fbca0e51842e7449%26oauth_signature_method%3DHMAC-SHA1%26 oauth_timestamp%3D1254282755%26oauth_version%3D1.0%26opensocial_app_id%3D123%26 opensocial_owner_id%3Dxxxxxxxx這個字符串是根據HMAC-SHA1文摘生成的,根據BASE64進行編碼,生成簽名。Key是consumer_secret和空的Token Secret用&連接而成的。consumer_secret利用了application登陸時發行的東西。例如:consumer_secret是79e0a55cde43e7dc86fd1e1366d6bd6ac7771db8,那么它將在轉化成79e0a55cde43e7dc86fd1e1366d6bd6ac7771db8&。 如果這么做,簽名如下Ky/6LlDHpHX1EZMRi5mfUl9vxqY=通過由此生成的參數和Authorization頭oauth_signature值的比較,驗證是可能的。如果不匹配,請執行類似顯示錯誤畫面的處理。 關于更詳細的式樣,請參照OAuth Consumer Request 1.0 Draft 1。

Post請求時的Signature生成

post請求時應非常注意,和OAuth Core 1.0里的一樣,post request的時候,請求正文也要按照OAuth的式樣定義的包含base字符串,根據歷史條件,采用不生成請求正文簽名的方法。 POST /foo/?opensocial_owner_id=xxxxxxxxxxxxx HTTP/1.0host: example.comContent-Length: 13 foo=1&bar=abc 如果上面的POST請求已提交,基本字符串如下。POST&http%3A%2F%2Fexample.com%2Ffoo%2F&oauth_consumer_key%3Dbc906fac81f581c3c96a %26oauth_nonce%3D9dc8fbca0e51842e7449%26oauth_signature_method%3DHMAC-SHA1%26 oauth_timestamp%3D1254282755%26oauth_version%3D1.0%26opensocial_owner_id%3Dxxxxxxxx 正如你可以看到,生成基本的字符串,不包括請求的主體。不過,僅是不包括請求主體。要注意賦給URL內的query parameter和GET一樣要包含base字符串。

參考文獻

OAuth Consumer Request 1.0 Draft 1
http://oauth.googlecode.com/svn/spec/ext/consumer_request/1.0/drafts/1/spec.html
December 2007.

URL的規則

URL的規范變動時,我們會通知,請注意確認。

個人資料畫面URL

例如1.對于PC: http://mixi.jp/show_friend.pl?puid={user_id}2.對于移動設備: http://m.mixi.jp/show_friend.pl?puid={user_id}PC和移動設備的差別是在域名上有無 “m.”

開始Mixi的移動應用程序

Mixi的移動應用程序,您可以創建一個應用程序使用的mixi網的社交圖。分享給各式各樣的朋友。

應用登陸

為了操作mixi網內信息,注冊申請是必要的。首先,請在“合作伙伴儀表板”訪問應用程序創建(當然請先登錄Partner Dashboard)。如果沒有成為mixi認證的合作伙伴,不會出現該畫面。

輸入Mixi應用程序的信息

登錄后,按要求填寫你的mixi應用信息,星號是必填項。頁面中,應用的對應范圍有5種,你可以創建一下5種應用程序。對應移動應用時,只有在登錄合作伙伴賬戶時才會出現,請注意,如果沒有通過合作伙伴,將不會出現。モバイル對應手機應用PC 對應PC應用スマートフォン 對應智能手機應用 1.Web版 2.android版 3.iOS版

關于各項輸入的內容,請參考以下

輸入內容確認后,同意規則,登錄應用即可。

關于用戶認可

利用Graph API或UserFlow API,必須用戶認可。這里是用戶認可的介紹。

用戶認可

mixi移動應用過渡到用戶認證畫面,需要使用graphapi:auth的表單標簽描述。僅支持post方法。更具體的如下html 表單action屬性描寫。 auth:graphapi 指定以下參數。

關于指定scope的值,請參考mixi Graph API的各種文檔。示例: <form action="auth:graphapi" method="POST"> <input type="hidden" name="response_type" value="code" /> <input type="hidden" name="scope" value="mixi_apps2 r_profile r_voice w_voice" /> <input type="hidden" name="state" value="1234567890" /> <input type="submit" value="認可を行う" /> </form> 當用戶發出拒絕批準或授權,將遷移至應用登錄時被設定的RedirectURI。當用戶許可時,以下的值將被作為參數返回。

您可以從授權碼中獲取必要的mixi Graph API訪問令牌。關于取得的方法請參考令牌的刷新、獲取令牌http://developer.mixi.co.jp/connect/mixi_graph_api/api_auth/#toc-1

發行的授權碼,有效期為3分鐘。
如果用戶沒有授權將返回以下值。

如果不需要用戶確認的范圍,如果你想下面列出的范圍,授權碼將發出用戶授權,而不顯示屏幕。
mixi_apps2
r_profile
r_profile_blood_type
r_profile_birthday
r_profile_gender
此外,像往常一樣,如果你必須指定的其他范圍,在這些范圍的同時為用戶授權屏幕將顯示。

mixi API SDK for Android

mixi官網提供了android SDK。

特點

Mixi的API SDK的Android?功能如下。1.無論是個人和企業,如果你是一個注冊的合作伙伴,任何人都可以開發。2.執行的程序不要求認證/授權的OAuth 2.03.自動更新/收購的令牌4.我可以在一個統一的程序API調用5.不要輸入密碼的時候,單點登錄的用戶授權6.因為不存在需要在應用程序中嵌入的秘密,提高了安全性

支持終端

Android SDK中在終端支持這項是如下。1.Android 2.1或更高版本2.可以利用的Google Play

提供的API

People APIGroups APIPhoto APIRequest APICommunication Feed ※ ※對于未來將提供交流反饋

下載SDK

要充分利用mixi網的Andr??oid?API SDK,請下載以下文件。 下載完成后, mixi網平臺服務條款和材料的使用準則mixi網平臺,我被視為已同意。mixiAndroidSDK-1.8.zip連接 http://developer.mixi.co.jp/appli/archive/mixiAndroidSDK-1.8.zip

注冊應用程序

要使用的SDK,應用程序必須是先前注冊過合作伙伴。 首先,請在注冊頁面服務Mixi Graph API注冊您的應用程序。

請根據以下過程注冊你的項目的包署名哈希值。使用SDK開發應用程序時,必須輸入值,沒有則無法開發。 這里的值是用來驗證注冊的應用程序身份的,以確保開發的有效性。 防止懷有惡意的第三方,冒充您提供的應用程序,進行詐騙。

如何獲得哈希值包簽名

1.登錄Google Play,提供需要的keystore文件2.運行JDK中的keytoolkeytool -list -v -keystore {keysore文件} -alias {作成時指定的別名}

顯示結果如下;

指紋的證書:MD5:2C:D8:DD:C5:D4:FE:9D:55:89:57:E6:7A:BB:12:3 F:55SHA1:50:57:B0:B9:A3:25:EE:E5:A2:54:19:85:31:32:52:63:49:1?:25:80簽名算法的名稱:SHA1withRSA版本:3 最后的結果是SHA1 除:以外的值的連接5057B0B9A325EEE5A254198531325263491C2580 在開發過程中,經常使用的密鑰庫文件進行調試。 在這種情況下,它也可以注冊后才能獲得的散列值的debug.keystore如下。 如果是Windows環境下,將debug.keystore文件生成在 C:\Documents and Settings\[用戶名]\.android,默認密碼為"android". keytool -list -v -keystore debug.keystore -alias androiddebugkey

URI啟動計劃

當用戶點擊列表中的應用程序和網站Mixi上的一覽,Android應用程序從Web瀏覽器啟動。 在這個時候開始的URI方案。 初始值被設置為以下值。mixiapp-&lt;APP_ID&gt;://run 您可以更改的此引導的的URI方案&lt;APP_ID&gt;的的部分。 我建議你盡可能地改變。如果你想進行更改,請從合作伙伴頁上更改應用程序設置信息。 對于實際的應用程序接收到這個開始的URI計劃,設置適當的意圖過濾器是必要的。

創建項目

您需要從下載頁面下載最新的SDK,解壓縮到正確的地方。此外,在這里我們將解釋程序使用Eclipse來開發應用程序。 我們假設Eclipse插件的 Mixi的API SDK的Android?,并預先安裝。

導入Mixi的API SDK的Android?

創建Android項目

按照正常程序創建Android項目創建一個項目。 目標API級別,請注意,您必須設置至少API等級8。 在情況下,它是必要的,也支持Android 2.1,請設置'7'項目最小SDK版本。

注冊項目庫

注冊的項目,開發一個Mixi的API SDK的Android?庫打開項目屬性,追加[Android]-[Library]。

通過以上操作,default.properties文件被修改如下。android.library.reference.1=../jp_mixi_android

AndroidManifest.xml中

添加上網權限

<uses-permission android:name="android.permission.INTERNET" />

都準備好了,現在開始開發。

初始化和授權過程

我將解釋如何使用mixi網的Android?API SDK編寫代碼來開發應用程序。

Activity說明

示例代碼中的Mixi API SDK的Android?應用程序使用的主Activity。 你可以這樣寫只有很少的代碼,即可使用SDK功能。 package com.example.foo;import android.app.Activity; import android.content.Intent; import android.os.Bundle; import jp.mixi.android.sdk.*;public class TestActivity extends Activity {MixiContainer mContainer;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);Config config = new Config();config.clientId = "YOUR_CONSUMER_KEY";config.selector = Config.GRAPH_API;mContainer = MixiContainerFactory.getContainer(config);mContainer.init(this);}@Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);mContainer.authorizeCallback(requestCode, resultCode, data);}@Overridepublic void onDestroy() {mContainer.close(this);super.onDestroy();} } (1)啟動時的處理(onCreate例如)
要使用SDK,你可以調用init()方法的MixiContainer實例。 為了產生的MixiContainer實例,請使用(配置設置)MixiContainerFactory.getContainer“。 配置要設定的項目如下。

(2)結束時的處理(例如,的OnDestroy)請運行MixiContainer#close()來執行相應的結束處理。 (3)授權結果的取得(onActivityResult)在onActivityResult AuthorizeCallback的call(),以獲得授權對話框的結果。

調用身份驗證和授權對話框

要使用mixi網的應用程序的API,已執行用戶授權使用的API是必要的。 void MixiContainer#authorize(Activity activity, String[] permissions, int activityCode,CallbackListener listener)

活動 指定活動的來電(如FooActivity.this)
權限 指定的范圍,我需要使用的API。 如“r_profile”,“w_photo”的范圍,請參閱每個API的文檔。
activityCode 碼值目標決策意圖
監聽 回調類調用之后的授權過程

通過調用此方法,下面的屏幕會顯示出來。

實際示例代碼是在這里

mContainer.authorize(TestActivity.this, new String[] {"r_profile","w_voice"}, AUTHORIZE_REQUEST_CODE,new CallbackListener() {@Overridepublic void onComplete(Bundle values) {// 正常時の処理}@Overridepublic void onError(ErrorInfo e) {// エラー時の処理}@Overridepublic void onCancel() {// ユーザキャンセル時の処理}@Overridepublic void onFatal(ErrorInfo e) {// 異常終了時の処理} });

回調方法的結果,因為它是所謂的支持用戶的授權,請采取適當的行動。

檢索錯誤信息在授權過程中,發生認可錯誤,返回errorinfo有可能獲得更多的信息。 對于可用的方法,請參見下文。

檢查授權的狀態

要檢查的狀態,當前的授權,我們使用下面的方法。
boolean MixiContainer#isAuthorized()
一般來說,僅在第一次出現授權畫面,第二個和后續的時間,它可能會跳過。
isAuthorize檢查處理方法。 返回true,如果已批準,則返回false,如果未經授權的。

解除認證

通過調用下面的方法,我們取消授權狀態。 此外,保護我們的客戶,如果你想利用mixi網的Android?API SDK,請確保實現此功能解除認證。
void MixiContainer#logout(Activity activity, int activityCode, CallbackListener listener);

如何使用API

請參考:
http://developer.mixi.co.jp/connect/mixi_graph_api/android/using-api/

總結

以上是生活随笔為你收集整理的[SNS]Mixi的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。