关于python操作protobuf,对参数赋值的问题。

python版本3.5
服务器protobuf版本,3.0.0
本地pc的protobuf版本,3.0.0
使用python的requests库做接口自动化测试,首先尝试登陆自动化。

UserLogin.proto的文件内容如下
图片说明

Type.proto的文件内容如下
图片说明

我写的接口测试文件如下

import UserLogin_pb2
import requests
import Type_pb2
testurl="https://balabala.balabala.com/service/user/login"

logininfo=UserLogin_pb2.Request()

body={
logininfo.loginType:2,
logininfo.bindType:1,
logininfo.thirdId:"008613522470675",
logininfo.password:"0b4e7a0e5fe84ad35fb5f95b9ceeac79"
}
print (body[logininfo.loginType])
print (body[logininfo.bindType])
print (body[logininfo.thirdId])
print (body[logininfo.password])

data=logininfo.SerializeToString()
r1=requests.post(testurl,data=data)
print (r1)

——————————
输出结果如下:
loginType 1
bindType 1
thirdId 0b4e7a0e5fe84ad35fb5f95b9ceeac79
password 0b4e7a0e5fe84ad35fb5f95b9ceeac79

我的问题是,为什么loginType和thirdid的值都不对,都被bindType和password的值给覆盖了???

debug下 兄弟 编码遇到问题 debug能解决99%的问题