在写脚本的过程中,除了发送form表单参数之外,我们还会发送json格式的参数。那么碰见json格式要怎么发送呢,这篇我们来解决这个问题。
直接上代码

import requests
import unittest
import json
import sys
import io
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='utf8') #避免打印中文乱码的

class Test_api(unittest.TestCase):

	def setUp(self):
		pass

	def test_01_api(self):
		self.url = 'https://*****/video/info'
		self.header = {'Content-Type' : 'application/json'}   
		#这句非常重要,有这句代码才能表示传参是json格式
		
		self.data = {
						"userId" : 20,
						"packageId" : 1,
						"videoId" : 10153
					 }
		self.res = self.res = requests.post(self.url,headers=self.header,json=self.data)  
		#一定要有header,即使header里边只标明了参数格式;json是把python的数据结构转换成json;
		
		self.r = self.res.json()
		print (self.r)


	def tearDown(self):
		pass

if __name__=='__main__':
	unittest.main()

返回值:

总结:
想要发送json数据,需要两个地方非常注意:
1、header里边定义传参格式
2、参数用json=