参数分为报文头xmlhead和报文体xmlbody,运用LoadRunner和Postman都能请求成功,运用python请求报空指针异常,和开发目前定位到,请求进到JAVA工程代码里,报文头xmlhead获取的内容为空。我个人怀疑是python的data请求写的有问题。python请求代码如下,请哪位大侠帮看下:
import requests
xmlhead = ('<?xml version=\'1.0\' encoding=\'UTF-8\'?>'+
'<InterBOSS>'+'<Value>0100</Value>'+.......)
xmbody = (
'<?xml version=\'1.0\' encoding=\'UTF-8\'?>'+
'<InterBOSS>'+
'<SvcCont>'+
'<![CDATA[<?xml version=\"1.0\" encoding=\"UTF-8\"?>'+
'<SvcRoot>'+
'<Item>'+
'<Name>xxxx</Name>'+
'<Value>xxxxx</Value>'+
)
headers ={'content-type' : 'text/xml'}
requests.post(url='192.168.1.101:8080/xxxx',data=[('xmlhead': 'xmlhead'),('xmlbody' : 'xmlbody')],
headers=headers)
问题已解决,data出现的问题。正确的写法是:data = {‘xmlhead’: xmlhead, 'xmlbody' : xmlbody}
data应该是个字典
data={
"xmlhead":"xmlhead",
"xmlbody":"xmlbody"
}
还有你的xmlhead和xmlbody不用括号....小心多打逗号就变成了元组
data={
"xmlhead":"xmlhead",
"xmlbody":"xmlbody"
} 昨天晚上试了,报空指针异常。l两个value值不加双引号问题解决了。
翻阅多篇博客,针对同名的多个参数,用元组。我就试了一把。