1. รับ Apikey, AppSecret และหมายเลขผู้ค้า
ลงทะเบียนบัญชีสาธารณะและบัญชีผู้ค้า
2. รับ OpenID ของผู้ใช้
1. ตั้ง [ชื่อโดเมนหน้าโทรกลับการอนุญาต]
คำอธิบายอย่างเป็นทางการ: หลังจากผู้ใช้ตกลงที่จะอนุมัติบัญชีอย่างเป็นทางการในหน้าการอนุญาตเว็บ WeChat จะส่งผ่านข้อมูลการอนุญาตไปยังหน้าโทรกลับ ชื่อโดเมนหน้าโทรกลับไม่รองรับที่อยู่ IP
2. ผู้ใช้ตกลงที่จะได้รับอนุญาต
ฉันเขียน URL นี้ภายใต้เมนู WeChat และขอให้ผู้ใช้เห็นด้วยเมื่อเข้าสู่หน้านี้ หมายเหตุ: ดูเหมือนว่าจะได้รับอนุญาตอย่างเงียบ ๆ ผู้ใช้ไม่ทราบ
1.URL:
https://open.weixin.qq.com/connect/oauth/authorize?appid=appid&redirect_uri=url&response_type=code&scope=snsapi_userinfo&state= Park#wechat_redirect
พารามิเตอร์: appid: ตัวระบุที่ไม่ซ้ำกันของบัญชีอย่างเป็นทางการ
Redirect_uri: URL ที่เปลี่ยนเส้นทางเป็นหน้าเว็บที่จะเปลี่ยนเส้นทางหลังจากได้รับอนุญาต
ขอบเขต: ขอบเขตการอนุญาตแอปพลิเคชัน
SNSAPI_BASE: ไม่มีหน้าการอนุญาตปรากฏขึ้นกระโดดโดยตรงสามารถรับ OpenID ผู้ใช้ได้
SNSAPI_USERINFO: หน้าการอนุญาตปรากฏขึ้นคุณจะได้รับชื่อเล่นเพศและตำแหน่งผ่าน OpenID
สถานะ: พารามิเตอร์ที่มีการเปลี่ยนเส้นทาง
2 หลังจากผู้ใช้เห็นด้วยรหัสจะถูกสร้างขึ้นโดยมีระยะเวลาเพียงไม่กี่นาที
String code = request.getParameter ("รหัส")3. เปลี่ยนรหัสเป็น openId
/** * คลาสคงที่ * @author rory.wu * */ค่าคงที่คลาสสาธารณะ {// ข้อมูลประจำตัวที่ไม่ซ้ำกันของผู้ใช้บุคคลที่สามสตริงคงที่สาธารณะ appid = ""; ";; = Authorization_Code ";} / *** คลาสเครื่องมือทั่วไป* @author rory.wu* @version stringUrl, requestmethod, utputstr String) {jsonObject jsonObject = null; log.error ("การเชื่อมต่อหมดเวลา:"+ce.getMessage ()); uffer httpsrequest (string requesturl, requestmethod, output สตริง) พ่น nosuchalgorithmexception, nosuchproviderexception, keymanagementexception, malformedurlex ception, ioexception, protocolexception ection) url.openconnection (); การเชื่อมต่อ SetDoOutput (จริง); output.getBytes ("utf-")); bufferedReader = new BufferedReader (InputStreamReader); ); */ โมฆะส่วนตัว setOpenid (รหัสสตริง) {session.put ("รหัส", รหัส); สตริง OAuth_url = ค่าคงที่ oauth_url.replace ("appid", ค่าคงที่). แทนที่ ("รหัส", สตริง. valueof (session.get ("รหัส"))); log.info ("jsonobject:" +jsonobject); ct.getString ("openId"); ":," Refresh _token ":" Refresh_token "," OpenId ":" OpenId "," Scope ":" Scope "," UnionId ":" O_BMASDASDSAD_SGVTHMZOPFL "} รหัสไม่ถูกต้อง: {" errCode ": "ไม่ถูกต้อง co de"}เนื้อหาข้างต้นคือการชำระเงินของบัญชีสาธารณะ WeChat ที่แบ่งปันโดยบรรณาธิการของ Wulin.com (i) วิธีการให้ผู้ใช้ OpenID ฉันหวังว่าคุณจะชอบ