WeChat JS SDK 액세스에 대한 몇 가지 참고 사항을 요약하고 공유합니다.
WeChat JS SDK에 액세스하려면 먼저 공식 웹사이트 설명서를 참조하세요. 요약하면 다음과 같은 몇 가지 단계가 있습니다.
1. 도메인 이름 바인딩:
먼저 WeChat 공개 플랫폼에 로그인하고 "기능 설정"에 들어갑니다. "공식 계정 설정"에서 "JS 인터페이스 보안 도메인 이름"을 입력합니다.
참고: 로그인 후 "개발자 센터"에서 해당 인터페이스 권한을 볼 수 있습니다.
2. JS 파일 도입: JS 인터페이스를 호출해야 하는 페이지에 다음 JS 파일을 도입합니다(https 지원):,
Remarks: AMD/CMD 표준 모듈 로딩 방법을 사용한 로딩을 지원합니다. jquery.cookie.js, sha1 .js의 경우 나중에
3을 사용하여 access_token을 가져온 다음 jsapi_ticket을 가져오는 함수를 자주 호출할 수 없으므로 전역 jsapi_ticket을 저장하고 저장할 수 있습니다. 만료되면 다시 가져오세요. 보안을 보장하기 위해 서버에 획득 작업을 넣는 것이 좋습니다.
4. noncestr(임의의 문자열), 유효한 jsapi_ticket, 타임스탬프(timestamp)를 연결합니다. ), url(현재 웹페이지의 URL, # 및 그 다음 부분 제외), 필드 이름의 ASCII 코드에 따라 서명할 모든 매개변수를 작은 것부터 큰 것까지(사전순) 정렬한 후 URL 키를 사용합니다. 값 쌍 형식(예: key1=value1&key2=value2...)을 사용하여 문자열 string1로 연결합니다. 여기에서 모든 매개변수 이름은 소문자라는 점에 유의해야 합니다.
5.sha1 암호화는 서명 서명을 생성합니다.
6. wx.config, wx.ready, wx.error 및 기타 방법을 구성합니다. 여기서 wx.ready는 성공적인 구성 후의 콜백입니다. .onMenuShareTimeline, wx.onMenuShareAppMessage 등은 동기 실행 목적을 달성하기 위해 배치됩니다.
서버 인터페이스:
//access_token是公众号的全局唯一票据 public function getTokenForJS() { $appid = "不告诉你"; $secret = "不告诉你"; $url = "https://api.weixin.qq.com/cgi-bin/token?appid=".$appid."&secret=".$secret."&grant_type=client_credential"; $result = http_request($url); echo $result;exit; } //获取ticket public function getTicket(){ $access_token = I("get.access_token"); $url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=".$access_token."&type=jsapi"; //$this->ajaxJSON($url); $result = http_request($url); echo $result;exit; } function http_request($url, $data = null) { $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); if (!empty($data)) { curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); } curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); $info = curl_exec($curl); curl_close($curl); return $info; }
Front-end js:
function setWechatJS() { // var temp = "jsapi_ticket=kgt8ON7yVITDhtdwci0qeRukvrGB1QLAfzCcybh4a_VMg6rgB4OhdsD4O2ruRI0OUPG5VfpKlYYWXcyEeChbBw&noncestr=4df32E3jY6YneEPNfGfs×tamp=1498120656&url="; // alert( hex_sha1(temp)); return false; //生成随机字符串 var randomString = function(len) { len = len || 32; var $chars = 'ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678'; /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ var maxPos = $chars.length; var pwd = ''; for (var i = 0; i < len; i++) { pwd += $chars.charAt(Math.floor(Math.random() * maxPos)); } return pwd; }; var showShareSetting = function () { console.log("title="+title+",description="+description+",link="+url+",imgUrl="+imgUrl); }; //wx配置参数 var jsapi_ticket = $.cookie('jsapi_ticket'); var hello2 = 'hello222'; console.log("jsapi_ticket="+jsapi_ticket); var wxConfig = function () { //alert('ddd='+jsapi_ticket); //获取当前url,不含#以及之后的部分 var timestamp = new Date().getTime(); //生成签名的时间戳(当前时间) var noncestr = randomString(20); var signature = ''; //签名 var url = window.location.href; var index = url.indexOf('#'); if(index !== -1 ) { url = url.slice(0,index); } var temp = "jsapi_ticket="+jsapi_ticket+"&noncestr="+noncestr+"×tamp="+timestamp+"&url="+url; signature = hex_sha1(temp); console.log("signature="+signature); wx.config({ debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: 'wx0875a197e0e5bcd7', // 必填,公众号的唯一标识 timestamp: timestamp, // 必填,生成签名的时间戳 nonceStr: noncestr, // 必填,生成签名的随机串 signature: signature,// 必填,签名,见附录1 jsApiList: [ 'checkJsApi', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone' ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2 }); wx.ready(function () { //配置成功之后回调 console.log("微信JS SDK配置成功!"); //实例化title\imgUrl title = $('title').html(); //默认取title description = $("meta[name='description']").attr('content'); //判断当前页面类型取缩略图 $("body img").each(function(index,element){ var width = $(element).width(); var height = $(element).height(); var Src = $(element).attr("src"); if(width>200 && height>200){//去页面中第一张宽高都大于200的图片 imgUrl = Src; //console.log(Src); return false; }else{//未在页面中取到合适的图片就选取银河的logo图 imgUrl = MyPic+"/H5/img/icon.png"; } }); showShareSetting(); //分享到朋友圈 wx.onMenuShareTimeline({ title: title, // 分享标题 link: url, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 success: function () { // 用户确认分享后执行的回调函数 showShareSetting(); }, cancel: function () { // 用户取消分享后执行的回调函数 } }); //分享给朋友 wx.onMenuShareAppMessage({ title: title, // 分享标题 desc: description, // 分享描述 link: url, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: imgUrl, // 分享图标 type: '', // 分享类型,music、video或link,不填默认为link dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空 success: function () { // 用户确认分享后执行的回调函数 showShareSetting(); }, cancel: function () { // 用户取消分享后执行的回调函数 } }); //分享到QQ wx.onMenuShareQQ({ title: title, // 分享标题 desc: description, // 分享描述 link: url, // 分享链接 imgUrl: imgUrl, // 分享图标 success: function () { // 用户确认分享后执行的回调函数 showShareSetting(); }, cancel: function () { // 用户取消分享后执行的回调函数 } }); //分享到QQ空间 wx.onMenuShareQZone({ title: title, // 分享标题 desc: description, // 分享描述 link: url, // 分享链接 imgUrl: imgUrl, // 分享图标 success: function () { // 用户确认分享后执行的回调函数 showShareSetting(); }, cancel: function () { // 用户取消分享后执行的回调函数 } }); }); wx.error(function(res){ console.log("微信JS SDK配置错误!"); // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。 }); }; //待分享生成的标题、链接、缩略图 var title,url,imgUrl,description; //本地cookie查找不到缓存再去请求网络 if(typeof (jsapi_ticket) == 'undefined' || jsapi_ticket == ''){ //alert('aaa='+jsapi_ticket); //以下步骤分别获取全局access_token、jsapi_ticket、signature $.get(MyUrl+"getTokenForJS",function (data) { var access_token = data['access_token']; //获取全局access_token,以及7200秒之后刷新的问题 //先出cookie中取,如果没有, $.get(MyUrl+"getTicket?access_token="+access_token,function(data){ jsapi_ticket = data['ticket']; //保存当前jsapi_ticket var date = new Date(); date.setTime(date.getTime()+7200*1000);//只能这么写,10表示10秒钟 //?替换成分钟数如果为60分钟则为 60 * 60 *1000 $.cookie('jsapi_ticket',jsapi_ticket,{expires:date,path:'/'}); //有效期7200秒 console.log("jsapi_ticket="+jsapi_ticket); //alert('ccc='+jsapi_ticket); wxConfig(); },'json'); },'json'); }else { //alert('bbb='+jsapi_ticket); wxConfig(); } }
위 내용은 WeChat JS SDK 액세스에 대한 몇 가지 참고 사항을 요약하고 공유합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











Deepseek : 강력한 AI 이미지 생성 도구! DeepSeek 자체는 이미지 생성 도구가 아니지만 강력한 핵심 기술은 많은 AI 페인팅 도구를 지원합니다. DeepSeek을 사용하여 이미지를 간접적으로 생성하는 방법을 알고 싶으십니까? 계속 읽으십시오! DeepSeek 기반 AI 도구로 이미지 생성 : 다음 단계에서는 다음 도구를 사용하도록 안내합니다. AI 페인팅 도구 시작 : DeepSeek 기반 AI 페인팅 도구를 검색하고 열면 "Simple AI"를 검색하십시오). 도면 모드 선택 : "AI 드로잉"또는 유사한 함수를 선택하고 "애니메이션 아바타", "풍경"과 같은 필요에 따라 이미지 유형을 선택하십시오.

2013 년에 설립 된 주요 암호 화폐 거래 플랫폼 인 Gate.io는 중국 사용자에게 완전한 공식 중국 웹 사이트를 제공합니다. 이 웹 사이트는 스팟 거래, 선물 거래 및 대출을 포함한 광범위한 서비스를 제공하며 중국 인터페이스, 풍부한 자원 및 커뮤니티 지원과 같은 특별한 기능을 제공합니다.

OKX Trading Platform은 거래 수수료, 인출 수수료 및 금융 수수료를 포함하여 다양한 요금을 제공합니다. 현물 거래의 경우 거래량은 거래량 및 VIP 수준에 따라 다르며 "시장 제조업체 모델"을 채택합니다. 즉, 시장은 각 거래에 대해 낮은 취급 수수료를 청구합니다. 또한 OKX는 통화 표준 계약, USDT 계약 및 배송 계약을 포함한 다양한 선물 계약을 제공하며 각 계약의 수수료 구조도 다릅니다.

Gateio Exchange 앱은 공식, 제 3 자 애플리케이션 시장, 포럼 커뮤니티 및 기타 채널을 다루는 기존 버전의 채널을 다운로드합니다. 또한 기존 버전을 쉽게 얻고 새로운 버전 또는 장치 호환성을 사용하여 불편 함 문제를 해결하는 데 도움이됩니다.

이 기사는 중국의 Ouyi Okx 앱의 안전한 다운로드에 대한 자세한 안내서를 제공합니다. 국내 앱 스토어의 제한으로 인해 사용자는 OUYI OKX의 공식 웹 사이트를 통해 앱을 다운로드하거나 공식 웹 사이트에서 제공 한 QR 코드를 사용하여 스캔 및 다운로드하는 것이 좋습니다. 다운로드 프로세스 중에 공식 웹 사이트 주소를 확인하고 응용 프로그램 권한을 확인하고 설치 후 보안 스캔을 수행하며 2 요인 확인을 활성화하십시오. 사용하는 동안 현지 법률 및 규정을 따르고, 안전한 네트워크 환경을 사용하고, 계정 보안을 보호하고, 사기에 대해 경계하고, 합리적으로 투자하십시오. 이 기사는 참조 용이며 투자 조언은 자신의 위험에 처해 있습니다.

Gate.io (Sesame Open Door)는 세계 최고의 암호 화폐 거래 플랫폼입니다. 자습서는 계정 등록 및 로그인, KYC 인증, 화폐 및 디지털 통화 재충전, 거래 쌍 선택, 한도/시장 거래 주문 및 주문 및 거래 기록보기와 같은 단계를 다루고 Cryptocurrency 거래를 위해 GATE.IO 플랫폼을 신속하게 시작할 수 있도록 도와줍니다. 초보자이든 베테랑이든,이 튜토리얼에서 혜택을 받고 Gate.io 거래 기술을 쉽게 마스터 할 수 있습니다.

샤오홍슈 카피라이팅을 쉽게 배워보세요! 이 튜토리얼에서는 지루한 단계에 작별 인사를 하고 Xiaohongshu 비디오 사본을 빠르게 복사하는 방법을 단계별로 설명합니다. Xiaohongshu 앱을 열고 마음에 드는 동영상을 찾은 후 동영상 아래의 [카피 라이팅] 영역을 클릭하세요. 복사된 텍스트를 길게 눌러 팝업 옵션에서 [텍스트 추출] 기능을 선택하세요. 시스템이 자동으로 텍스트를 추출합니다. 왼쪽 하단에 있는 [복사] 버튼을 클릭하세요. WeChat이나 Moments 등의 다른 애플리케이션을 열고 입력 상자를 길게 누른 후 [붙여넣기]를 선택하세요. 보내기를 클릭하면 복사가 완료됩니다. 그것은 간단합니다!

H5. 미니 프로그램과 앱의 주요 차이점은 다음과 같습니다. 기술 아키텍처 : H5는 웹 기술을 기반으로하며 미니 프로그램 및 앱은 독립적 인 응용 프로그램입니다. 경험과 기능 : H5는 가볍고 사용하기 쉽고 기능이 제한되어 있습니다. 미니 프로그램은 가벼우 며 상호성이 우수합니다. 앱은 강력하고 부드러운 경험이 있습니다. 호환성 : H5는 크로스 플랫폼 호환성이며 애플릿 및 앱은 플랫폼에 의해 제한됩니다. 개발 비용 : H5는 개발 비용이 낮고 중간 미니 프로그램 및 최고 앱이 있습니다. 적용 가능한 시나리오 : H5는 정보 표시에 적합하고 애플릿은 가벼운 응용 프로그램에 적합하며 앱은 복잡한 기능에 적합합니다.
