2010-12-20 61 views
0

将数据从站点A发送到站点B而不传递新的URL参数的好方法是什么?在站点之间发送数据

例如,在现场A我通过表格提交apples are red。如何在不修改站点B的URL结构的情况下将该数据发送到站点B?

例如http://siteb.com/?data=apples+are+red

不知道引用通告或包括引用使用类似的方法。

回答

1

,如果你只是想直接提交表单到网站B,只需使用method = “get” 和行动= “http://siteb.com”

可以说,您要发送的偏移,其中网站B将用它来确定从arcticles列出页码,您的站点A的形式是这样的:

<form method="get" action="http://siteb.com"> 
    <input type="text" name="offset" id="offset" value="0" /> 
    <input type="submit" value="OK" /> 
</form> 
+0

站点B的“偏移”值0可以在站点B中检索传递一个URL参数? – 2010-12-20 16:40:30

+2

如果您提交表单,它会指向您 http://siteb.com?offset=0 如果您不希望参数显示在查询字符串中使用方法=“post” – FabioG 2010-12-20 17:06:15

+0

这不会说你将如何知道发送什么参数。从他的问题,他问如何知道要发送什么,而不改变siteb的网址结构。 – Rasiel 2010-12-22 15:27:14

1

查询字符串,就像上面的示例一样,但是siteb需要知道它获取的数据。

想象它像联盟计划,你通过查询字符串从你的网站通过linb到siteb(在这种情况下,联盟网站),它的作品,因为网站B知道什么期望。

1

你的意思是这样的:

$data = 'http://siteb.com?'.$_SERVER['QUERY_STRING']; 
$ch = curl_init($data); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_exec($ch); 
+0

嗯,我还没有机会与合作CURL呢。我认为我会使用JSON的REST。你认为CURL最适合这种类型的东西吗? – 2010-12-20 16:42:13

+0

这不是完美的,其他网站上的加载时间/超时时间长可能会导致你自己的页面加载,尽管有许多方法可以“忘记”这个过程,比如通过ajax回发到脚本,在你自己的服务器上完成这个任务因为你不能XSS的其他域,这将导致CURL查询发生在你的页面加载后,并且不会影响你自己的页面加载时间... – FatherStorm 2010-12-20 21:29:29