查了不少資料耳璧,發(fā)現(xiàn)中文的蘋果登錄的開發(fā)信息不夠用囱挑,官方的說明都只有英文的凌唬,這里記錄一下過程
首先得有個開發(fā)者賬號
1、打開開發(fā)者中心
2妖泄、從左邊菜單找到 Identifiers
3驹沿、在右邊找到開發(fā)的app,沒有就新建一個
當(dāng)然這里也可以自己重寫建立一個浮庐,但沒有直接在 XCode 中生成項目來的快
4甚负、無論是新建還是生成,這里都可以在右邊列表看到app审残,點進(jìn)去查看已啟用的功能
5梭域、勾選今日主角 Sign in with Apple
6、然后在Edit中選取了單個app登錄
最下面填上回調(diào)地址
7搅轿、接下來新建一個新的 identifier病涨,注意是 Services IDs
因為我們要驗證服務(wù)器,讓web端也能使用蘋果登錄
8璧坟、注冊完成便可修改
9既穆、修改便可填入域名和子域名
確保 Primary App ID 是你要選用的app
注意回調(diào)地址那里的鏈接必須要有 https 開頭
10、設(shè)置完成雀鹃,頁面顯示無誤后可以選取左邊的 Key
11幻工、注冊一個新的認(rèn)證key
12、先選這個key關(guān)聯(lián)到你的主app黎茎,然后點擊continue囊颅,
13、點擊register后key就生成了傅瞻,現(xiàn)在可以下載
記得要記下這個keyID踢代,待會兒其他地方要用到
14、回到賬戶主界面嗅骄,選擇Membership胳挎,查看 Team ID
現(xiàn)在,你獲得了 service ID, redirect URL, team ID, key ID, and private key. 接下來就可以開始第二部分 Sign In with Apple REST API.
15溺森、網(wǎng)頁登錄
但我們要的是在網(wǎng)頁端登錄慕爬,所以這里先附上代碼
···
<button id="sign-in-with-apple-button"> Sign In with Apple </button>
<script type="text/javascript" src="https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js"></script>
<script type="text/javascript">
AppleID.auth.init({
clientId : 'xxxx',
scope : 'email',
redirectURI: 'https://dogfightx.com/',
state : 'DE'
});
const buttonElement = document.getElementById('sign-in-with-apple-button');
buttonElement.addEventListener('click', () => {
AppleID.auth.signIn();
});
</script>
···
這里有個要非常注意的地方窑眯,就是 clientId 是申請的serveic IDs 中的那個 identifier
這個 redirectURI 是已經(jīng)在該 identifier 下注冊的回調(diào)地址,亂填可是會提示URL錯誤的
OK医窿,此時在網(wǎng)頁界面就可以正常使用了
OK挖垛,接下來就是服務(wù)器驗證蘋果發(fā)回來的Token害幅,得到用戶的email作為唯一ID注冊賬號
此
.