我有一个cURL请求的示例:

curl -X "POST" "http://192.168.24.62:8080/upload" \
     -H 'Content-Type: multipart/form-data; charset=utf-8' \
     -F "file=@test.wav" \
     -F "filename=buffer.wav"


而且它运行得很好.我想要转换这个请求使用requests库在Python中.以下是我的try :

import requests

filename = 'test.wav'

url = 'http://192.168.24.62:8080/upload'
with open(filename, 'rb') as file:
    files = {'file': ('buffer.wav', file, 'audio/wav')}
    headers = {'Content-Type': 'multipart/form-data; charset=utf-8'}
    response = requests.post(url, headers=headers, files=files)

print(response.json())

我收到一个错误:

requests.exceptions.ChunkedEncodingError: ("Connection broken: ConnectionResetError(54, 'Connection reset by peer')", ConnectionResetError(54, 'Connection reset by peer'))

这是怎么回事?

推荐答案

以下内容在我的机器上运行(显然是不同的IP:端口).

import requests

url = "http://192.168.24.62:8080/upload"

with open('test.wav', 'rb') as f:
    files = {
        'file': (f.name, f, 'audio/wav'),
        'filename': ('', 'buffer.wav')
    }

    response = requests.post(url, files=files)


print(response.status_code)
print(response.text)

Python相关问答推荐

从收件箱获取特定列中的重复行

手动为pandas中的列上色

预期LP_c_Short实例而不是_ctyles.PyCStructType

在Python中使用一行try

自定义新元未更新参数

如何让pyparparsing匹配1天或2天,但1天和2天失败?

使用scipy. optimate.least_squares()用可变数量的参数匹配两条曲线

如何根据另一列值用字典中的值替换列值

使用Keras的线性回归参数估计

如何计算两极打印机中 * 所有列 * 的出现次数?

try 与gemini-pro进行多轮聊天时出错

如何删除索引过go 的lexsort深度可能会影响性能?' &>

使用索引列表列表对列进行切片并获取行方向的向量长度

无法通过python-jira访问jira工作日志(log)中的 comments

使用setuptools pyproject.toml和自定义目录树构建PyPi包

如何在solve()之后获得症状上的等式的值

有没有一种方法可以从python的pussompy比较结果中提取文本?

ThreadPoolExecutor和单个线程的超时

如何在达到end_time时自动将状态字段从1更改为0

替换现有列名中的字符,而不创建新列