将GET请求中的URL发送到Google App Engine上的Python服务器

时间:2014-11-11 02:28:36

标签: python google-app-engine parameters server get-request

我在Google Apps引擎上用Python编写了一个非常简单的服务器。我希望能够通过GET请求向其发送命令,例如"http://myserver.appspot.com/?do=http://webpage.com/?secondary=parameter"

这不起作用,因为辅助参数会被单独解释并发送到我的应用程序。 有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

网址http://myserver.appspot.com/?do=http://webpage.com/?secondary=parameter未正确形成。也许你可以urlencode字符串数据,然后发送它

from urllib import urlencode
data = {"do": "http://webpage.com/?secondary=parameter"}
encoded_data = urlencode(data)
url = "http://myserver.appspot.com/?" + encoded_data

提供输出

>>> print url
http://myserver.appspot.com/?do=http%3A%2F%2Fwebpage.com%2F%3Fsecondary%3Dparameter

或者,如果您使用的是python requests模块,则可以执行

import requests
payload = {"do": "http://webpage.com/?secondary=parameter"}
r = requests.get("http://myserver.appspot.com/", params=payload)

给出输出

>>> print r.url
u'http://myserver.appspot.com/?do=http%3A%2F%2Fwebpage.com%2F%3Fsecondary%3Dparameter'