Maison Applet WeChat Développement de mini-programmes À propos de la fonction de sélection des téléchargements de photos sur téléphone mobile de WeChat JS-SDK

À propos de la fonction de sélection des téléchargements de photos sur téléphone mobile de WeChat JS-SDK

Jun 27, 2018 pm 02:24 PM
js sdk 上传 微信

Cet article présente principalement en détail la fonction WeChat JS-SDK de sélection des photos de téléphone portable à télécharger. Il a une certaine valeur de référence. Les amis intéressés peuvent se référer à

si vous rencontrez le besoin de sélectionner des photos dans le. projet. Pour les exigences de téléchargement, étant donné que la page Web s'exécute dans le navigateur de WeChat, la fonction de sélection de photos fournie par le js-sdk de WeChat est utilisée pour le développement du projet. Les outils de développement Web WeChat doivent être utilisés dans le développement réel. Lien de référence détaillé : https://mp.weixin.qq.com/wiki/10/e5f772f4521da17fa0d7304f68b97d7e.html.

1. Configurez les fichiers liés à WeChat JS-SDK

1), JSSDk utilise la dernière version 1.2.0 : https://res.wx.qq.com /open/js/jweixin-1.2.0.js.

Problèmes d'adaptation du développement Web iOS :

Changement : les versions JSSDK inférieures à 1.2.0 ne prennent plus en charge localld renvoyé en utilisant l'API ChooseImage, tel que : "img src=wxLocalResource : / /50114659201332" pour prévisualiser l'image.

Suggestion d'adaptation : mettez directement à niveau le JSSDK vers la dernière version 1.2.0 pour aider la page à s'adapter automatiquement, mais cela peut ne pas être efficace dans certains scénarios. Dans ce cas, vous pouvez utiliser l'interface getLocalImgData pour obtenir directement. les données.

(Code détaillé ci-joint)

2), fichier jsapiSign.js :

/**
 * 使用jssdk接口的页面,必须引用该文件
 * actionUrl:后台服务请求地址
 * url:微信jssdk授权页面地址
 */
$.post("/getJsapiSign", {'url':location.href.split('#')[0]}, function(data) {
 wx.config({
 debug : false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
 appId : data.appid, // 必填,公众号的唯一标识
 timestamp : data.timestamp, // 必填,生成签名的时间戳
 nonceStr : data.noncestr, // 必填,生成签名的随机串
 signature : data.signature,// 必填,签名,见附录1
 jsApiList : [ 'checkJsApi',
  'onMenuShareTimeline',
  'onMenuShareAppMessage',
  'onMenuShareQQ',
  'onMenuShareWeibo',
  'hideMenuItems',
  'showMenuItems',
  'hideAllNonBaseMenuItem',
  'showAllNonBaseMenuItem',
  'translateVoice',
  'startRecord',
  'stopRecord',
  'onRecordEnd',
  'playVoice',
  'pauseVoice',
  'stopVoice',
  'uploadVoice',
  'downloadVoice',
  'chooseImage',
  'previewImage',
  'uploadImage',
  'downloadImage',
  'getNetworkType',
  'openLocation',
  'getLocation',
  'hideOptionMenu',
  'showOptionMenu',
  'closeWindow',
  'scanQRCode',
  'chooseWXPay',
  'openProductSpecificView',
  'addCard',
  'chooseCard',
  'openCard',
  'getLocalImgData'
 ]
 });
 
 wx.error(function(res) {
 alert("wx.config加载失败");
 });
}, 'json');
Copier après la connexion

2 . Processus d'implémentation spécifique

1), sélectionner les photos

Ici, nous utilisons la méthode ChooseImage de WeChat js-sdk pour obtenir l'identifiant de la photo stockée localement, ce qui est très simple :

2), obtenir des données photo

Selon les documents de développement officiels de WeChat, le localId obtenu peut être directement affiché comme l'attribut src de l'élément img

3), télécharger photos

La méthode uploadImage de WeChat js-sdk est utilisée ici

wx.chooseImage({
 count: 1, // 默认9
 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
 success: function (res) {
  var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
  wx.uploadImage({
  localId: localIds[0], // 需要上传的图片的本地ID,由chooseImage接口获得
  isShowProgressTips: 1, // 默认为1,显示进度提示
  success: function (res) {
   var medias = {'lid':localIds[0].toString(), 'sid':res.serverId};
   $('#img_media').attr('src', medias.lid);
  },fail:function(res){
   alert("上传失败");
  }
  });
 }
});
Copier après la connexion

3. 🎜>

Adaptation liée à JSAPI

1), le cache ne sera plus pris en charge

Changement : le cache jsapi ne sera pas pris en charge dans WKWebview.

Suggestion d'adaptation : tous les développeurs utilisant cette API peuvent supprimer la logique liée à la page.

2), la page prévisualise l'image via LocalID

Modification : les versions JSSDK inférieures à 1.2.0 ne prennent plus en charge localld renvoyé en utilisant l'API ChooseImage, telle que : "img src=wxLocalResource : // 50114659201332" pour prévisualiser l'image.

Suggestion d'adaptation : mettez directement à niveau le JSSDK vers la dernière version 1.2.0 pour aider la page à s'adapter automatiquement, mais cela peut ne pas être efficace dans certains scénarios. Dans ce cas, vous pouvez utiliser l'interface getLocalImgData pour obtenir directement. les données.

(Les versions en ligne actuelles de JSSDk sont 1.0.0 et 1.1.0, et la version mise à jour est 1.2.0, https://res.wx.qq.com/open/js/jweixin-1.2 .0. js )

if (window.__wxjs_is_wkwebview) {
 wx.getLocalImgData({
 localId: localIds[0], // 图片的localID
 success: function (res) {
  var localData = res.localData; // localData是图片的base64数据,可以用img标签显示
  localData = localData.replace('jgp', 'jpeg');//iOS 系统里面得到的数据,类型为 image/jgp,因此需要替换一下
  $('#img_media').attr('src', localData);
 },fail:function(res){
  alert("显示失败");
 }
 });
}
Copier après la connexion

3 Si vous utilisez JSSDK et utilisez wx.config pour l'autorisation, vous devez faire attention à l'échec de l'appel jsapi

Changements : Les changements d'implémentation internes de WKWebview nous ont amenés à apporter certains ajustements logiques à la gestion des autorisations jsapi de la page dans WeChat. Il y a une très petite possibilité que ce soit auparavant. jsapi autorisé n'obtiendra pas les autorisations normalement, ce qui entraînera l'échec de l'appel de jsapi.

Suggestions d'adaptation :

1. iOS WeChat 6.5.1, WKWebview est connu pour avoir les problèmes suivants dans cette version : la page utilise API d'historique HTML5 pushState ; popstate ; replaceState et autres navigations dans les pages de contrôle (généralement, comme une seule page d'application), et utilisez le wx.config de JSSDK pour autoriser jsapi. À l'heure actuelle, il existe une forte probabilité que jsapi ne parvienne pas à appeler. faute d'autorisation. Si possible, la technologie de hachage Anchor peut être utilisée pour remplacer la technologie History sur la page 6.5.1 pour résoudre ce problème.

2. iOS WeChat 6.5.2 et les versions ultérieures n'auront pas les problèmes ci-dessus, mais il ne peut pas être confirmé à 100 % que les pages qui utilisent l'historique ou la technologie de hachage pour modifier l'adresse de navigation des pages n'auront pas de tels problèmes à Pourtant, les développeurs doivent prêter attention à ces problèmes.

Cet article a été compilé dans le « Résumé des compétences de développement JavaScript WeChat ». Tout le monde est invité à apprendre et à lire.

Je voudrais recommander un didacticiel de mini-programme WeChat qui retient beaucoup d'attention en ce moment : "Tutoriel de développement de mini-programme WeChat" que l'éditeur a soigneusement compilé pour vous. J'espère qu'il vous plaira.

Ce qui précède représente l'intégralité du contenu de cet article. J'espère qu'il sera utile à l'étude de chacun. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois !

Recommandations associées :

Méthode de notification asynchrone et de commande de vérification pour appeler le SDK après paiement dans le mini-programme WeChat

WeChat Network requêtes dans les mini programmes (poster des requêtes et obtenir des requêtes)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

OUYI Exchange App Download Download Tutorial OUYI Exchange App Download Download Tutorial Mar 21, 2025 pm 05:42 PM

Cet article fournit un guide détaillé pour le téléchargement en toute sécurité de l'application OUYI OKX en Chine. En raison des restrictions sur les magasins d'applications nationales, il est conseillé aux utilisateurs de télécharger l'application via le site officiel d'Ouyi OKX, ou d'utiliser le code QR fourni par le site officiel pour analyser et télécharger. Pendant le processus de téléchargement, assurez-vous de vérifier l'adresse officielle du site Web, de consulter les autorisations d'application, d'effectuer une analyse de sécurité après l'installation et d'activer la vérification à deux facteurs. Pendant l'utilisation, veuillez respecter les lois et réglementations locales, utiliser un environnement de réseau sûr, protéger la sécurité des comptes, être vigilant contre la fraude et investir rationnellement. Cet article est pour référence uniquement et ne constitue pas des conseils d'investissement.

La différence entre H5 et mini-programmes et applications La différence entre H5 et mini-programmes et applications Apr 06, 2025 am 10:42 AM

H5. La principale différence entre les mini programmes et l'application est: Architecture technique: H5 est basé sur la technologie Web, et les mini-programmes et l'application sont des applications indépendantes. Expérience et fonctions: H5 est légère et facile à utiliser, avec des fonctions limitées; Les mini-programmes sont légers et ont une bonne interactivité; Les applications sont puissantes et ont une expérience fluide. Compatibilité: H5 est compatible multiplateforme, les applets et les applications sont limités par la plate-forme. Coût de développement: H5 a un faible coût de développement, des mini-programmes moyens et une application la plus élevée. Scénarios applicables: H5 convient à l'affichage d'informations, les applets conviennent aux applications légères et les applications conviennent aux fonctions complexes.

Application Gateio Exchange Ancienne version GATEIO Exchange App Old Version Télécharger la chaîne de téléchargement Application Gateio Exchange Ancienne version GATEIO Exchange App Old Version Télécharger la chaîne de téléchargement Mar 04, 2025 pm 11:36 PM

Les canaux de téléchargement de l'application GATEIO Exchange pour les anciennes versions, couvrant les marchés d'applications officiels, tiers, les communautés de forum et d'autres canaux.

Que dois-je faire si le logiciel de sécurité de l'entreprise est en conflit avec les applications? Comment dépanner les logiciels de sécurité des teintes provoque l'ouverture des logiciels communs? Que dois-je faire si le logiciel de sécurité de l'entreprise est en conflit avec les applications? Comment dépanner les logiciels de sécurité des teintes provoque l'ouverture des logiciels communs? Apr 01, 2025 pm 10:48 PM

Problèmes de compatibilité et méthodes de dépannage pour les logiciels et applications de sécurité de l'entreprise. De nombreuses entreprises installeront des logiciels de sécurité afin d'assurer la sécurité intranet. Cependant, les logiciels de sécurité parfois ...

Comment choisir H5 et Applets Comment choisir H5 et Applets Apr 06, 2025 am 10:51 AM

Le choix de H5 et Applet dépend des exigences. Pour les applications avec une plate-forme multiplateuse, un développement rapide et une éleve élevée, choisissez H5; Pour les applications avec une expérience native, des fonctions riches et des dépendances de plate-forme, choisissez des applets.

Quelle est la différence entre la production de pages H5 et les applets WeChat Quelle est la différence entre la production de pages H5 et les applets WeChat Apr 05, 2025 pm 11:51 PM

H5 est plus flexible et personnalisable, mais nécessite une technologie qualifiée; Les mini-programmes sont rapides à démarrer et faciles à entretenir, mais sont limités par le cadre WeChat.

Tutoriel détaillé sur la façon d'acheter et de vendre une monnaie virtuelle de binance Tutoriel détaillé sur la façon d'acheter et de vendre une monnaie virtuelle de binance Mar 18, 2025 pm 01:36 PM

Cet article fournit un bref guide pour l'achat et la vente de monnaie virtuelle de binance mise à jour en 2025 et explique en détail les étapes de fonctionnement des transactions de devises virtuelles sur la plate-forme de binance. Le guide couvre l'achat de monnaie Fiat USDT, l'achat de transactions en devises d'autres devises (tels que BTC) et les opérations de vente, y compris le trading du marché et la limite de trading. En outre, le guide rappelle également spécifiquement les risques clés tels que la sécurité des paiements et la sélection du réseau pour les transactions de monnaie fiduciaire, aidant les utilisateurs à effectuer des transactions de binance en toute sécurité et efficacement. Grâce à cet article, vous pouvez rapidement maîtriser les compétences de l'achat et de la vente de monnaies virtuelles sur la plate-forme Binance et de réduire les risques de transaction.

Le premier hominidé numérique culturel et touristique double cœur du pays! Tencent Cloud aide Huaguoshan Scenic Area Le premier hominidé numérique culturel et touristique double cœur du pays! Tencent Cloud aide Huaguoshan Scenic Area Mar 12, 2025 pm 12:57 PM

Le quartier panoramique de Lianyungang Huaguoshan se joint à Tencent Cloud pour lancer le premier homo numérique "à double cœur" Homo Sapiens dans l'industrie culturelle et touristique - Monkey King! Le 1er mars, l'endroit pittoresque a officiellement connecté le King Monkey à la plate-forme Deepseek, de sorte qu'il a les deux capacités de modèle d'IA de Tencent Hunyuan et Deepseek, apportant aux touristes une expérience de service plus intelligente et plus prévenante. Huaguoshan Scenic Area a précédemment lancé le Roi singe du Digital Homo Sapiens basé sur le modèle Tencent Hunyuan. Cette fois, Tencent Cloud utilise en outre des technologies telles que le moteur de connaissances Big Model pour le connecter à Deepseek pour obtenir une mise à niveau "double core". Cela rend la capacité interactive du singe à un niveau supérieur, une vitesse de réponse plus rapide, une capacité de compréhension plus forte et plus de chaleur. Monkey King a de fortes capacités de traitement du langage naturel et peut comprendre diverses façons de poser des questions aux touristes.

See all articles