爲什麼要求客戶端密鑰,但不是真的如果你只是使用JavaScript客戶端。實時SDK客戶端密鑰可選要求
這是不合邏輯的。有人可以向我解釋,爲什麼直接進行REST呼叫時需要祕密?
JavaScript API的不需要 「客戶端祕密」:
WL.init({
client_id: APP_CLIENT_ID,
redirect_uri: REDIRECT_URL,
scope: "wl.signin",
response_type: "token"
});
但是,如果你想使REST直接調用它的需要:
POST https://login.live.com/oauth20_token.srf
Content-type: application/x-www-form-urlencoded
client_id=CLIENT_ID&redirect_uri=REDIRECT_URL&client_secret=CLIENT_SECRET&code=AUTHORIZATION_CODE&grant_type=authorization_code
代碼來自:http://msdn.microsoft.com/en-us/library/hh243641.aspx
我假設客戶端的祕密是一個安全功能,如果是這樣的話,爲什麼通過js API的連接可以用比直接連接到服務器的安全約束更少冰?所以它看起來像「可選需要」取決於上下文,這使得它對我來說是一種矛盾,但可能是我錯過了一些東西。