2012-09-08 30 views
0

我有一种情况需要在另一个GET请求中发送GET请求。如何在另一个GET或POST中发送GET或POST请求

http://domain.com/data?Message=ItsMyMessage&Photo=http://photodomain.com/photo?FileType=1&type=png 

这不行!

那么,我该如何能够做到这一点?

编辑:我正在Django的

编辑

工作:

http://myapple.pagekite.me/photo?friend_from=Surya&friend_to=Sophie&image_url=http%3A%2F%2Fmyapple.pagekite.me%2F%2Fimg%3FFileName%3Dpic5.png%26Message%3DHi%2520 

不工作(当我发布到Facebook上,它得到转化为下图):

http://myapple.pagekite.me/photo?friend_from=Surya&amp%3Bfriend_to=Sophie&amp%3Bimage_url=http%3A%2F%2Fmyapple.pagekite.me%2F%2Fimg%3FFileName%3Dpic5.png%26Message%3DHi%2520 

注:在上面的两个代码段,&转化为&amp%3B

回答

2

你必须URL编码次级参数。然后在您的代码中解码它们并将它们发送出去。

http://domain.com/data?Message=ItsMyMessage&Photo=http%3A%2F%2Fphotodomain.com%2Fphoto%3FFileType%3D1%26type%3Dpng%0A 

在纯Python,你可能会做这样的事情:

import sys 
from urllib import urlencode 
artist = "Kruder & Dorfmeister" 
artist = urlencode({'ArtistSearch':artist}) 

,导致:

ArtistSearch=Kruder+%26+Dorfmeister 

积分O'Reilly观点 http://www.oreillynet.com/pub/h/476

也许Django还提供了一些快捷键这里。但我不知道。

+0

好吧!我正在研究Django。 – Surya

+0

这是工作......但我有这个问题。其实这整个事情都在Facebook的分享到墙上的行动,Facebook正在做一些混乱。 **它将'& **'更改为**'& 3B' **,因此当从Facebook Wall中点击时,整个GET请求不起作用。 – Surya

+0

有什么办法解决这个问题? – Surya