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< vorliegen 🎜>
header
Rückruf bei Schnittstellenerfolg
success
Rückruf bei Schnittstellenfehler
Zusätzlich gibt es zwei Parameter, die nicht enthalten sind Der Code: fail
method http
Der Rückruf nach dem Aufruf der Schnittstelle wird unabhängig vom Erfolg oder Misserfolg der Schnittstelle als < bezeichnet 🎜>
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-type
multipart/form-data
Content-type
, darunter , ,
,und
sind die gleichen wie normale HTTP-Anfragen.url
header
Die verschiedenen Parameter hier sind: success
fail
complete
Das entsprechende
der Datei. Der Server benötigt die Datei über den
name
Weitere Parameter, die in der Anfrage verwendet werden könnenkey
name
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
,complete
和wx.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中文网!
相关推荐:
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!