簡體   English   中英

使用API​​ Python發送POST請求

[英]Send POST request using API python

我正在執行以下發布請求,並收到錯誤“文件過早結束”

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import os, unittest, time, re, random, datetime
import requests


class Sauce(unittest.TestCase):

def test_create_contract(self):
    payload = {'PO_ID': '3557698',' MAN': 'HQF01'}
    r = requests.post(
        "https://time.tps.com/xml/Msg.jsp?msg=MSG_RAM_INFO&user=Dist1&pass=ome1")
    print r
print r.text


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

當我嘗試使用XML文件使用soap客戶端時,它的工作正常我的XML文件是

<SO>
  <PO_ID>3557698</PO_ID>
  <MAN>HQF01</MAN>
</SO>

我需要發送發布請求,並需要得到回復。

r=requests.post("https://time.tps.com/xml/Msg.jsp?msg=MSG_RAM_INFO&user=Dist1&pass=ome1")

但是您實際上並沒有發送帖子數據。 您應該向該發布請求添加數據=有效負載。

url = "https://time.tps.com/xml/Msg.jsp?msg=MSG_RAM_INFO&user=Dist1&pass=ome1"
payload={'PO_ID': '3557698','MAN': 'HQF01'}
r=requests.post(url,data = payload)

編輯:

嘗試這個

payload = "<SO><PO_ID>3557698</PO_ID><MAN>HQF01</MAN></SO>"
headers = { 'Content-Type': 'application/xml' }
r=requests.post(url, data = payload, headers = headers)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM