Heim  >  Artikel  >  WeChat-Applet  >  Informationen zu den Schritten zum Festlegen einer HTTP-Anfrage für das WeChat-Applet

Informationen zu den Schritten zum Festlegen einer HTTP-Anfrage für das WeChat-Applet

不言
不言Original
2018-06-23 10:09:399832Durchsuche

Dieser Artikel stellt Ihnen die detaillierten Schritte zum Stellen von HTTP-Anfragen in WeChat-Miniprogrammen vor. Ich glaube, dass es für jeden hilfreich sein wird, Netzwerkanfragen in WeChat-Miniprogrammen zu lernen.

Einführung in die HTTP-Anfrage

HTTP (HyperText Transfer Protocol) ist eine Reihe von Regeln für die Kommunikation von Computern über das Netzwerk. Computerexperten haben HTTP entwickelt, um HTTP-Clients (z. B. Webbrowsern) die Anforderung von Informationen und Diensten von HTTP-Servern (Webservern) zu ermöglichen. Die aktuelle Version des HTTP-Protokolls ist ein zustandsloses Protokoll, und zustandslos bezieht sich auf das Web Es ist nicht erforderlich, eine dauerhafte Verbindung zwischen dem Browser und dem Webserver herzustellen. Das bedeutet, dass die Verbindung geschlossen wird und keine Informationen über die Verbindung gespeichert werden, wenn ein Client eine Anfrage an den Server stellt und der Webserver eine Antwort zurückgibt Server. Information.HTTP folgt dem Anforderungs-/Antwortmodell. Der Webbrowser sendet eine Anfrage an den Webserver, und der Webserver verarbeitet die Anfrage und gibt eine entsprechende Antwort zurück. Alle HTTP-Verbindungen sind als eine Reihe von Anfragen und Antworten strukturiert.

WeChat-Applet-Einstellungen http-Anfrage

Für die Netzwerkkommunikation im WeChat-Applet können Sie nur mit dem angegebenen Domänennamen kommunizieren Das Applet umfasst vier Arten von Netzwerkanforderungen.

1. Gewöhnliche HTTPS-Anfrage (wx.request)

2. Datei hochladen (wx.uploadFile)

3. Datei herunterladen (wx.downloadFile)

4. WebSocket-Kommunikation (wx.connectSocket)

Hier stellen wir hauptsächlich drei Arten von Netzwerkanforderungen vor: wx.request, wx.uploadFile und wx.dowloadFile

Domänennamen festlegen

Damit das WeChat-Applet über das Netzwerk kommunizieren kann, müssen Sie zunächst die Domäne festlegen Name, sonst tritt ein Fehler auf:

Der URL-Domänenname ist illegal, bitte versuchen Sie es nach der MP-Hintergrundkonfiguration erneut

Der Domänenname benötigt soll im Miniprogramm der öffentlichen WeChat-Plattform eingestellt werden.

Sie können die Einstellungsoptionen in der Einstellungsoberfläche des WeChat-Applets sehen:


Einstellungen
Entwicklungseinstellungen auswählen:


Entwicklungseinstellungen

Sie können die Servereinstellungen sehen:


Servereinstellungen

Hier können Sie die Domänennamen festlegen, die vier Arten von entsprechen Für den Netzwerkzugriff muss jeweils ein Domänenname festgelegt werden. Beachten Sie, dass https://example.com/api nicht aufgerufen werden kann, wenn der Domänenname auf https://example.com/api/ festgelegt ist. Auf muss / folgen.

http-Anfrage

Verwenden Sie wx.request, um eine http-Anfrage zu initiieren, und ein WeChat-Applet ist auf nur 5 begrenzt gleichzeitige Netzwerkanfrage.

function queryRequest(data){ 
 wx.request({
 url:"https://example.com/api/",
 data:data,
 header:{
 // "Content-Type":"application/json"
 },
 success:function(res){
 console.log(res.data)
 },
 fail:function(err){
 console.log(err)
 }

 })

}

Der obige Code sendet eine HTTP-Get-Anfrage und druckt dann das zurückgegebene Ergebnis aus. Auch die Parameter sind relativ einfach zu verstehen.

url Die URL-Adresse des Servers

data Die angeforderten Parameter können in der Form String data:"xxx=xxx&xxx=xxx" oder Object data:{"userId":1}
Anforderungsheader festlegen

header Rückruf bei Schnittstellenerfolg

success Rückruf bei Schnittstellenfehler

Zusätzlich gibt es zwei Parameter, die nicht enthalten sind Der Code: fail

Methode, der Standardwert ist GET request

method http Der Rückruf nach dem Aufruf der Schnittstelle wird unabhängig vom Erfolg oder Misserfolg der Schnittstelle als

zum Hochladen von Dateiencomplete

Die API zum Hochladen von Dateien ist , die eine http-Post-Anfrage initiiert > ist
. Der Server muss Dateien entsprechend dem
-Typ empfangen, Beispielcode:

wx.uploadFile

function uploadFile(file,data) {
 wx.uploadFile({
 url: 'http://example.com/upload',
 filePath: file,
 name: 'file',
 formData:data,
 success:function(res){
 console.log(res.data)
 },
 fail:function(err){
 console.log(err)
 }

 })

}
Content-typemultipart/form-dataContent-type, darunter

,

,

,

und

sind die gleichen wie normale HTTP-Anfragen.

urlheaderDie verschiedenen Parameter hier sind: successfail completeDas entsprechende
der Datei. Der Server benötigt die Datei über den

-Parameter

 nameWeitere Parameter, die in der Anfrage verwendet werden könnenkeyname

Datei herunterladenformData http

下载文件的api为wx.downloadFile,该api会发起一个http get请求,并在下载成功之后返回文件的临时路径,示例代码:

function downloadFile(url,typ,success){
 wx.downloadFile({
 url:url,
 type:typ,
 success:function(res){
 if(success){
 success(res.tempFilePath)
 }
 },
 fail:function(err){
 console.log(err)
 }
 })
}

其中的url,header,fail,completewx.uploadFile的参数使用是一致的,其中有区别的参数是:

     type:下载资源的类型,用于客户端自动识别,可以使用的参数image/audio/video<br>

     success:下载成功之后的回调,以tempFilePath的参数返回文件的临时目录:res={tempFilePath:'文件路径'}<br>

下载成功后的是临时文件,只会在程序本次运行期间可以使用,如果需要持久的保存,需要调用方法wx.saveFile主动持久化文件,实例代码:

function svaeFile(tempFile,success){
 wx.saveFile({
 tempFilePath:tempFile,
 success:function(res){
 var svaedFile=res.savedFilePath
 if(success){
 success(svaeFile)
 }
 }
 })
}

使用wx.saveFile保存临时文件到本地,提供给小程序下次启动时使用,其中的参数:

tempFilePath 需要被保存文件的路径

success 保存成功的回调,返回保存成功的路径,使用res.savedFilePath可以获取保存成功的路径

fail 失败的回调

complete结束的回调

超时的设置

可以在app.js中设置networkTimeout可以设置四种类型网络访问的超时时间:

"networkTimeout":{
 "request": 10000,
 "connectSocket": 10000,
 "uploadFile": 10000,
 "downloadFile": 10000
}

这里设置的超时时间对应着四种类型的网络请求。

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

微信小程序开发教程之增加mixin扩展

微信小程序的MINA文件结构的介绍

微信小程序要怎么选择SSL证书类型

Das obige ist der detaillierte Inhalt vonInformationen zu den Schritten zum Festlegen einer HTTP-Anfrage für das WeChat-Applet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn