Pengenalan Keizinan Teknologi Platform-Pengguna
Keizinan Log Masuk
Jika aplikasi anda perlu mendapatkan data privasi pengguna (seperti produk, pesanan, dll.) semasa menyambung dengan platform terbuka Taobao, untuk memastikan keselamatan dan privasi data pengguna, aplikasi anda perlu mendapatkan pengguna kebenaran, iaitu, mendapatkan akses Token Akses (SessionKey asal) data pengguna. Dalam kes ini, aplikasi anda perlu membimbing pengguna melalui proses "keizinan log masuk" menggunakan akaun Taobao. Proses ini menggunakan protokol standard OAuth2.0 yang diterima di peringkat antarabangsa sebagai protokol pengesahan dan kebenaran pengguna, serta menyokong tapak web, klien mudah alih dan klien desktop.
Pada masa ini, perkhidmatan Taobao OAuth2.0 menyokong dua cara untuk mendapatkan Token Akses (token kebenaran), iaitu aliran sisi pelayan dan aliran sisi pelanggan Sila rujuk arahan berikut untuk butiran.
Nota: Produk ID Taobao (akaun Taobao) tidak boleh digunakan untuk saluran tidak rasmi Alibaba Group untuk menyediakan perkhidmatan keahlian Taobao kepada pembeli Taobao (seperti: pertanyaan pesanan, Logistik penjejakan, dsb.), sebaik sahaja penggunaan haram ditemui, platform terbuka akan segera membatalkan hak penggunaan ID Taobao bagi kunci aplikasi.
注:Taobao ID(淘帐号)产品不得用于阿里巴巴集团非官方渠道为淘宝买家提供淘宝会员类服务(如:订单查询、物流追踪 等),一旦发现违规使用,开放平台将立即收回该appkey的Taobao ID使用权限。
特别注意
此文档描述的授权页面仅适用于PC端,如果您的页面是在手机淘宝/天猫客户端中被访问,请参考这里。如果您的页面是在H5手机浏览器中被访问,请参考这里。
一、Server-side flow
此流程要求ISV应用有Web Server应用,能够保存应用本身的密钥以及状态,可以通过https直接访问淘宝的授权服务器。
1、请求入口地址
1)获取授权码(code)
正式环境:https://oauth.taobao.com/authorize
沙箱环境:https://oauth.tbsandbox.com/authorize
2)获取访问令牌(access_token)
正式环境:https://oauth.taobao.com/token
沙箱环境:https://oauth.tbsandbox.com/token
Nota khasHalaman kebenaran yang diterangkan dalam dokumen ini hanya terpakai kepada PC Jika halaman anda diakses dalam pelanggan Taobao/Tmall mudah alih, sila rujuk di sini. Jika halaman anda diakses dalam pelayar mudah alih H5, sila rujuk di sini.
1. Aliran sisi pelayan
Proses ini memerlukan aplikasi ISV untuk mempunyai aplikasi Pelayan Web, yang boleh menyimpan kunci dan status aplikasi itu sendiri, dan boleh mengakses terus pelayan kebenaran Taobao melalui https.

🎜🎜🎜2. Langkah keizinan🎜🎜🎜 Di sini kita mengambil persekitaran formal untuk mendapatkan access_token sebagai contoh menjadi Alamat dan data lain yang berkaitan digantikan dengan alamat kemasukan kotak pasir yang sepadan, dan proses operasi adalah konsisten dengan persekitaran formal. 🎜 Semasa menjalankan operasi kebenaran, data yang diuji client_id, client_secret, dan redirect_uri perlu diganti mengikut data aplikasi sebenar yang dibuat oleh anda Anda tidak boleh menggunakan nilai yang diberikan dalam contoh untuk ujian langsung, supaya tidak mempengaruhi kesan ujian sebenar. Rajah di bawah menunjukkan carta aliran kaedah kebenaran aliran sebelah pelayan Berikut ialah penjelasan langkah demi langkah berdasarkan carta alir. 🎜🎜🎜1) Penyambungan url kebenaran
Penyambungan kebenaran pengguna memerlukan akses kepada url Contoh dan penerangan parameter adalah seperti berikut:
https://oauth.taobao.com/authorize?response_type=code&client_id=23075_594&http://redirect_id=23075_594&http://redirect_uri= www.oauth. net/2/&state=1212&view=web
3) Dapatkan kod2) Bimbing pengguna untuk log masuk untuk mendapatkan kebenaran
Bimbing pengguna untuk mengakses url kebenaran di atas melalui penyemak imbas, dan halaman log masuk berikut akan muncul. Pengguna memasukkan nombor akaun dan kata laluan dan mengklik butang "Log Masuk" untuk memasuki halaman kebenaran.
Pada halaman yang ditunjukkan di atas, jika pengguna mengklik butang "Izinkan", TOP akan mengembalikan kod kebenaran ke alamat panggilan balik, dan aplikasi boleh mendapatkan dan menggunakan kod untuk menukar akses_token
Jika pengguna mengklik Benarkan dan bukannya mengklik butang Benarkan "Batal" akan mengembalikan hasil berikut, dengan ralat ialah kod ralat dan error_description ialah penerangan ralat. Seperti yang ditunjukkan dalam rajah di bawah:
Arahan:
Anda boleh menerbitkan aplikasi dalam pasaran perkhidmatan (fuwu.taobao.com Selepas aplikasi dalam talian, pengguna yang membeli aplikasi boleh menggunakan "Perkhidmatan Saya-). -Gunakan Sekarang" "Akses (gambar di bawah), sistem secara automatik akan melompat ke halaman kebenaran (jadi jika anda mengakses aplikasi dengan cara ini, anda tidak perlu menyambung URL), hanya perhatikan untuk mendapatkan kod. Pada masa yang sama, apabila memulangkan kod, ia juga akan mengembalikan maklumat yang berkaitan dengan perkhidmatan pesanan yang melalui negeri, sama seperti:
state=versionNo:1;itemCode:xxxxx (versionNo ialah nombor versi aplikasi, itemCode ialah kod pengecasan aplikasi)
4) Sebagai pertukaran untuk access_token
Gunakan arahan curl Linux untuk mendapatkan access_token (token kebenaran), seperti berikut;Untuk aplikasi, anda boleh merujuk kepada dokumentasi**示例**
Contoh kod di sini . . 4& redirect_uri=http://www.oauth.net/2/ "https://oauth.taobao.com/token
. 95%E5%B8%90%E5%8F%B752",
"expires_in": 8_640 ", "refresh_token": "6200e1909ca29b04685c49d67f5ZZ3675347c0c6d5abccd263685215", "access_token": "6200819d93906f 56333b263685215", "r1_expires_in": 1800 } Contoh nilai pulangan sebagai pertukaran untuk access_token 2. Aliran sisi pelangganKaedah kebenaran aplikasi pelanggan, sesuai untuk ISV yang tidak mempunyai pelayan web bebas, tetapi boleh mengakses pelayan web bebas. dengan bantuan pelayar atau aplikasi skrip JS. 1. Minta alamat kemasukan Persekitaran formal: https://oauth.taobao.com/authorize 2 Ambil persekitaran formal untuk mendapatkan access_token sebagai contoh Jika ia adalah persekitaran kotak pasir, sila gunakan data kotak pasir. Pada masa yang sama, semasa proses kebenaran, parameter seperti client_id perlu diganti mengikut data sebenar aplikasi yang anda buat, jika tidak, kebenaran tidak dapat diselesaikan.Gambar di bawah ialah carta aliran kaedah kebenaran aliran sebelah pelanggan Berikut adalah penerangan langkah demi langkah mengikut carta alir https://oauth. taobao.com/authorize?response_type=token&client_id=23075594&state =1212&view=web 2) Bimbing pengguna untuk log masuk untuk mendapatkan kebenaran Selepas mengklik Kebenaran pada halaman di atas, TOP akan terus mengembalikan access_token ke halaman lalai Taobao (berbeza daripada kaedah aliran sisi Server untuk mengembalikan kod dahulu dan kemudian menukar access_token), yang boleh digunakan pada masa ini skrip JS (if(window.location.hash!=""){alert(window.location.hash)} https://oauth.taobao.com/oauth2?view=web#access_token=6101227f5e8c230692b130692b13476672b13476672ac93a6672ac93a6c66c 1&to ken_type=Bearer&expires_in=86400&refresh_token=6100627e3f9202c0960a6ab5bfd704939c91635892c70dd263664221&re_expires_in=81_6400_in=864000_in=86400_in=864000 00&taobao_user_id=263664221&taobao_user_nick= %E5 %95%86%E5%AE%B6%E6%B5%8B%E8%AF%95%E5%B8%90%E5%8F%B717&w1_expires_in=86400&w2_expires_in=86400&state=1212&top_C352FC53342 592F Nota:
iaitu, sahkan sama ada parameter pemulangan konsisten dengan top_sign. Dalam parameter yang dikembalikan seperti di atas, susun semua kekunci dan nilai selepas tanda paun kecuali top_sign dalam susunan abjad parameter, sambungkannya bersama dalam bentuk key1+value+key2+value...., dan kemudian tambah AppSecret sebelum dan selepas mereka.
Proses log keluar pada masa ini hanya menyokong akses web Fungsinya adalah untuk mengosongkan kuki taobao.com, bukan untuk membatalkan kebenaran pengguna. Akses pada WAP tidak berfungsi. 1. Minta alamat penyertaan1. Persekitaran formal: https://oauth.taobao.com/logoff 2.2. Langkah keluar Kaedah operasi adalah serupa dengan mendapatkan token akses, hanya parameter permintaan yang berbeza, penerangan adalah seperti berikut: Arahan berkaitan
Tempoh sah akses_token yang dibenarkan (tamat_dalam) adalah berkaitan dengan jenis teg (seperti alatan IT, sistem hujung belakang pedagang, dll.) dan status (seperti persekitaran formal, dalam talian, dll.) seperti berikut. 2. Penerangan Tahap Keselamatan Untuk lebih fleksibel mengawal keselamatan data yang dibuka pada platform terbuka Taobao dan mengurangkan risiko data pengguna dibocorkan atau diubah suai secara berniat jahat, konsep tahap keselamatan diperkenalkan. Contoh kod1. Dapatkan contoh akses_token Kod contoh semuanya dilaksanakan berdasarkan sdk. Sila rujuk arahan untuk memuat turun dan menggunakan sdk. 1, Contoh JAVA . Contoh refresh_token Berikut ialah berdasarkan contoh Java SDK, bahasa lain boleh merujuk kepada kaedah pemerolehan token, yang serupa Pada masa yang sama, apabila menguji, anda perlu menggantikan parameter ujian dengan nilai sebenar yang sepadan dengan aplikasi anda. import java.io.IOException; import java.util.HashMap; import java.util.Map; import com.taobao.api.internal.util.WebUtils; //引用top sdk public class open_oauth { public static void main(String[] args) { String url="https://oauth.taobao.com/token"; Map<String,String> props=new HashMap<String,String>(); props.put("grant_type","authorization_code"); /*测试时,需把test参数换成自己应用对应的值*/ props.put("code","test"); props.put("client_id","test"); props.put("client_secret","test"); props.put("redirect_uri","http://www.test.com"); props.put("view","web"); String s=""; try{s=WebUtils.doPost(url, props, 30000, 30000); System.out.println(s); }catch(IOException e){ e.printStackTrace();} } }Tukar responseJson kepada objek di atas, atau ekstrak terus medan access_token dan token segar semula baharu daripadanya "w2_expires_in": 0, "taobao_user_id": "263685215", "taobao_user_nick": "%E5%95%86%E5%AE%B6%E6%B5%8B%E8%AF%95%E5%B8%90%E5%8F%B752",
"tamat_semula_dalam": 0,
"tamat tempoh_dalam": 86400,
|