获取Yahoo管道脚本的用户输入

时间:2011-03-27 16:53:43

标签: javascript rss yahoo-pipes

我在某些方面有点像菜鸟,所以我想知道是否有人能帮助我希望这是一个简单的问题。

我开发了一个Yahoo Pipe,它将Label作为输入的名称。然后应该运行yahoo管道来生成输出。

下面是我从Yahoo Pipes页面运行Yahoo Pipe时生成的一段代码。

现在我的问题是我想从我自己的网站运行这个管道并让用户输入他们想要的标签,而不是让他们离开网站并转到Yahoo Pipes页面。

<script src="http://l.yimg.com/a/i/us/pps/listbadge_1.4.js">{"pipe_id":"6c3a35f3d8e3cdb8ef270a3565d64ca3","_btype":"list","pipe_params":{"tags":"Cooking Beef Chicken"},"width":"600","height":"500"}</script>

我希望有一个用户填写的简单表单,以及代码从输入和执行生成上述脚本代码。

我希望我已经解释过这一点,因为它有点令人困惑。

总而言之,我如何从网页上的用户那里获得他们想要运行管道的标签的输入,以及生成正确的代码并执行。

1 个答案:

答案 0 :(得分:1)

如果您使用服务器端脚本

,这是一个三部分技巧

信息从常规表单发送回它来自的页面,并从网址中提取,如此

enter <?php $userInput    = $_GET["userInput"]); ?>here

现在可以将userInput写入一个javascript src URL,使跨域调用管道。

enter <script src="http://pipes.yahoo.com/pipes/pipe.run?_id=050fc8ccfefd18420680a86ebf4bf80e&_render=json&_callback=cbfunc&town=<?php echo $userInput; ?>"></script> here

当管道返回数据时,它会在其周围包含一个“回调”标记,在本例中称为 cbfunc ,这用于触发页面中的javascript例程提取数据JSON字符串的头,让你用它做你想做的事。

enter function cbfunc(data){
    var data     = (data.value.items[0].content)
                } here

当您点击地图搜索时,您可以在http://bishop-test.appspot.com/处看到此操作示例。此链接也有助于扩展JSON输出http://braincast.nl/samples/jsoneditor/