Post 请求作为彩信中的媒体

Post Request as Media in MMS

我写了一个 python 从网络服务器获取照片的程序。照片是通过向我的URL发送POST请求获得的(返回的照片取决于POST请求的数据):

myobj = {'x': [1,2,3,4], 'y': [1,2,3,6]}

x = requests.post('http://cainevisualizer.azurewebsites.net/plot.png', data=myobj)

x 是一个 requests.Response 对象,其方法提供其内容、状态代码、响应 url、文本(unicode)等(参见所有方法 here. 但是,似乎为了在 Twilio 中发送图像的文本消息,Message().media 需要图像的 URL。

message = Message()
message.media(myURL)

同样,网络服务器(在 Flask 中)在 post 请求后 returns 图像,而不是向图像返回唯一的 url。是否有 API 或其他方法可以将 MIME 图像转换为唯一的 url?任何建议表示赞赏。

我想我找到了解决我自己问题的方法。因此,我将托管照片的网络服务器更改为现在接受 GET 请求。然后我将我的参数传递给并向网络服务器发送 GET 请求。见GET请求如下:

import requests

data = {'x[]': [1,2,3,4], 'y[]': [4,5,6,7]}
response = requests.get('http://cainevisualizer.azurewebsites.net/plot.png', params=data)
url = response.url

此请求将 data 字典中的参数作为单个 URL 传递给网络服务器。在这种情况下,GET 请求被编码为 url 并传递 [1,2,3,4] 和 [4,5,6,7] 作为查询参数。这不是将 GET 请求中的信息作为请求正文的一部分发送(或作为除 url 本身之外的任何内容的一部分) 我现在使用网络服务器中的 request.args.getlist('x[]')request.args.getlist('y[]') 函数从这个 GET 请求中获取信息......它看起来像这样

from flask import Flask, request, make_response

app = Flask(__name__)

@app.route('/plot.png', methods=['GET', 'POST'])
def plot():
    xs = request.args.getlist('x[]')
    ys = request.args.getlist('y[]')