Bien que la plupart des interfaces conventionnelles soient désormais demandées au format json
Mais il est inévitable que certaines interfaces doivent transmettre des flux de fichiers, et à ce stade, elles doivent être téléchargées sous forme- format de données#🎜🎜 #
for.e :
L'interface suivante existe. Les images d'affiche sont créées via l'interface mais les vignettes doivent être téléchargées #. 🎜🎜#Pour le moment, le Content-Type de l'interface ne peut pas être application/json, mais multipart/form-data ;
Le format du paramètre est également transmis sous la forme d'un form
Il est très difficile de définir le flux de fichiers dans Postman. Simple, définissez le format de fichier, puis vous pouvez sélectionner le fichier à télécharger localement, voir l'image ci-dessous
L'interface de requête réelle réussira
# 🎜🎜#L'utilisation de python pour compléter la requête ci-dessus nécessite des méthodes de requête claires et les types de données, ainsi que le téléchargement de fichiers et la lecture de fichiers
import requests import json from requests_toolbelt.multipart.encoder import MultipartEncoder url='http://XXX.xxx.xxx.xx:9900/api-marketing-center/poster/save' data={'activityName':'我是个海报2', 'backgroundPicUrl':'https://xxxxx/default/f865a1aa66adfe50d005bd840e2c3356.jpg', 'copywriting':'我是个海报 看看我2', 'endTime':'2021-08-14 16:00:00', 'startTime':'2021-08-11 16:00:00', 'giftPicUrl':'https://xxxxx/file/c363c3173ac7c02393bf60018031073d.PNG', 'qrCodeUrl':'https://xxxxxx/file/c363c3173ac7c02393bf60018031073d.PNG', 'posterUrlThumbnail':'文件' } files = {"posterUrlThumbnail": open('C:/Users/Lenovo/Desktop/格式测试/12.PNG', "rb")} headers={'AUTH_MERCHANTS_ID': '76', 'Authorization': 'Bearer ad8cbdf3-c827-470a-aba5-076f0f3a9628'} r=requests.post(url=url,params=data, headers=headers,files=files) print(r.json()) #{'code': 0, 'msg': '操作成功', 'data': None}
Utilisez les en-têtes codés en dur les plus simples ci-dessus, #🎜🎜 #
Appelez les méthodes de la bibliothèque de requêtes demander
pour obtenir le résultat
Bien sûr, vous pouvez également encapsuler une méthode de connexion d'une manière plus compliquée pour appeler la connexion, obtenir le jeton et les paramètres d'en-tête requis#🎜🎜 #
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!