我试图将一个原始curl命令转换为使用Python请求模块,但运气不佳。这是一个查询jbossmgmt接口的简单请求,但它无法正确解析我的JSON。在
16:34:26,868 DEBUG [org.jboss.as.domain.http.api] (HttpManagementService-threads - 15) Unable to construct ModelNode 'Invalid character: o'
Python版本
^{pr2}$工作原始卷曲命令:
/usr/bin/curl --digest -v -L -D - 'http://brenn:!12rori@localhost:9990/management' --header Content-Type:application/json '-d {"operation":"read-attribute","name":"server-state","json.pretty":1}'
在python代码中,我读入REST/cURL负载,如下所示
import requests
----
def readconfigfile():
with open('jboss_modification.cfg') as f:
lines = f.readlines()
return lines
配置文件如下所示
{"operation":"read-attribute","name":"server-state","json.pretty":1}
我将str格式从readconfigfile()转换为字典,如下所示
def converttodictionary(incominglines):
commands = []
for lin in incominglines:
#dumps = json.dumps(lin)
obj = json.loads(lin)
commands.append(obj)
return commands
执行此请求的python代码如下
def applyconfig(lines):
url="http://localhost:9990/management"
auth=HTTPBasicAuth('brenn', '!12rori')
s = requests.Session()
re=s.get(url, auth=HTTPDigestAuth('brenn', '!12rori')) ##200 RESP
s.headers.update({'Content-Type': 'application/json'})
for line in lines:
payload=line
r=s.post(url,payload)
print(r.text)
有什么特别感谢的帮助吗?在
注意:这个问题已经更新了几次,因为我解决了其他问题。。。。在
问题是。。。在
初始JSON请求失败,因为当我从python解释为str的文件中读取它时
使用转换为词典json.loads服务器已接受请求,但无法解析JSON,错误为非法字符
使用将此json转换回strjson.dumps文件在我看来,这就像我一开始想做的,现在这很管用
def readconfigfile():
读取JSON文件def converttodictionary
转换为json/字典:json.loads(lin)
使用
json.dumps
将这个json“back”转换为一个字符串,并按如下方式发布)
相关问题 更多 >
编程相关推荐