Rumah > Soal Jawab > teks badan
Halaman web pautan luaran akaun awam WeChat telah dijadikan angular
aplikasi satu halaman menggunakan Pada masa ini, kami menghadapi masalah dengan kebenaran halaman web WeChat dan menghubungi js sdk
Setahu saya setakat ini, selepas memanggil kebenaran WeChat, url masuk aplikasi satu halaman akan kelihatan seperti ini (dengan andaian nama domainnya ialah: example.com
):
①http://example.com?code=aaabbb/#/home
atau (dengan html5 mode
didayakan) kelihatan seperti ini:
②http://example.com/home?code=aaabbb
Setakat ini, tidak akan ada masalah
?code=aaabbb
, diisi apabila mengubah hala selepas kebenaran WeChat Hanya dengan ini kami boleh mendapatkan maklumat pengguna lanjut > Dapatkan kod
Panggil js sdk
http://example.com?code=aaabbb/#/home
, ia boleh lulus pengesahan tandatangan, dan kemudian berjaya menghubungi js sdk Tetapi keadaan sebenar adalah: jika kebenaran diperlukan, mesti wujud, dan pengesahan tandatangan mesti gagal. Jadi bagaimana untuk menyediakan keizinan dan panggilan SDK? ? ? ?code=aaabbb
?code=aaabbb
, dapatkan kod dan kemudianTolong berikan saya penyelesaian yang boleh dipercayai. Dengan melakukan ini, kami boleh mendapatkan maklumat pengguna dan memanggil SDK dengan jayanya, tetapi masalahnya ialah setiap kali kami memasuki aplikasi,
http://example.com?code=aaabbb/#/home
akan dimuat semula dua kalilocation.href = http://example.com/#/home
, yang menjadikan pengalaman pengguna sangat teruk, dan saya boleh Tidak menerimanya walaupun saya mempunyai gangguan obsesif-kompulsif.
黄舟2017-05-15 17:14:10
Halaman hadapan tulen tidak boleh dilaksanakan Anda hanya boleh mengkonfigurasi nama domain halaman panggil balik kebenaran ke pelayan hujung belakang, dan kemudian mengubah halanya dari hujung belakang
.PHPz2017-05-15 17:14:10
Anda boleh menggunakan indexOf() untuk mendapatkan nilai kod
var url = 'http://example.com?code=aaabbb/#/home';
var n = url.indexOf('code=')+5;
var m = url.indexOf('/#');
var code = url.substr(n, m-1);
Dengan cara ini anda boleh mendapatkan nilai kod
phpcn_u15822017-05-15 17:14:10
Halaman hadapan tulen tidak boleh dilaksanakan Kebetulan baru-baru ini saya telah melakukan projek serupa, yang turut menggunakan angularjs dan melaksanakan program satu halaman melalui angular-route.js.
Panggil antara muka latar belakang melalui ajax dalam program halaman tunggal (index.html),
Jika berjaya, kembalikan: {status:true,...}
Jika tidak log masuk dan gagal, kembalikan: {status:falst,next: 'log masuk',errmsg :'Ralat'}
Ralat lain dikembalikan: {status:falst,next:'Next operation',errmsg:'Error'}
Jika status pulangan result.status==false, result.next=='login':
case "login":
$http.get($api.callback($api.login)).success(function(val){
//通过后台返回 授权地址
location.href = val.loginUrl;
});
return;
Beri kuasa untuk melompat ke wxlogin.php Selepas mengesahkan bahawa log masuk berjaya, selepas menetapkan SESI, lompat ke program satu halaman (index.html)
Atur cara akan terus memanggil antara muka , ia mengembalikan: {status:true ,...}
PHP中文网2017-05-15 17:14:10
Bagaimanakah perkara ini harus diselesaikan? Penulis akan menyiarkan jawapan untuk menyelesaikannya. Saya juga akan menggunakan Vue untuk membangunkan WeChat