首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用python flask从客户端向服务器发送和接收XML文件

使用python flask从客户端向服务器发送和接收XML文件
EN

Stack Overflow用户
提问于 2018-06-09 03:10:33
回答 1查看 2.7K关注 0票数 0

我需要将存储在客户端机器上的XML文件发送和接收到flask服务器。我可以使用请求对JSON文件执行相同的操作,但XML不会执行相同的操作。

这是我的服务器端代码

代码语言:javascript
复制
app = Flask(__name__)
api = Api(app)
app.config["DEBUG"] = True


@app.route('/',methods=['GET','POST'])
def home():
    print ("************SERVER CALLED ***********")
    req_data= request.get(silent=True)

app.run(host='192.168.37.129')

这是客户端代码

代码语言:javascript
复制
getlatestfile = os.getcwd()+fileseparator+"MSF"
getlatestfile=getlatestfile+fileseparator+"*.xml"
list_of_files = glob.glob(getlatestfile)
if list_of_files:
    msfFile = max(list_of_files, key=os.path.getctime)
    print ("[+] Sending latest MSF file which is..."+msfFile)
    with open(msfFile) as xml:

        response = requests.post('http://192.168.37.129:5000/', data=open(msfFile).read())
        print ('response from server:',response.text)

        #k=response.text
        #print(res1.content);
        print("[+] Received response from server...Intiating run of commands as directed by server \n")


else:
    print("No Result file present in the XML directory location/file could be corrupted.")

我在我的服务器和主机上分别得到了以下错误

代码语言:javascript
复制
AttributeError: 'Request' object has no attribute 'get'

客户端

代码语言:javascript
复制
File "test.py", line 26, in <module>
    response = requests.post('http://192.168.37.129:5000/', data=open(msfFile).read())
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 112, in post
    return request('post', url, data=data, json=json, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/api.py", line 58, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 508, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/sessions.py", line 618, in send
    r = adapter.send(request, **kwargs)
  File "/usr/lib/python2.7/dist-packages/requests/adapters.py", line 490, in send
    raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', error(32, 'Broken pipe'))

我们将非常感谢ANy帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-09 04:40:06

尝试匹配客户端和服务器的端口号。此外,不是写

代码语言:javascript
复制
req_data= request.get(silent=True) 

代码语言:javascript
复制
return jsonify(request.json)

和改变

代码语言:javascript
复制
response = requests.post('http://192.168.37.129:5000/', data=open(msfFile).read())

代码语言:javascript
复制
response = requests.post('http://192.168.37.129:5000/', json=data)    
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50767064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档