如何从silverlight或google向Bing传递搜索词
有没有人幸运地从Silverlight向Bing或Google传递了一个基于url参数的字符串,该字符串将在浏览器中打开搜索结果。我一直在使用Bing API,能够在客户端中搜索和返回结果,我也使用JSON并将值传递给Google API。但是,如果您只想向任一服务发送查询字符串,并通过浏览器结果列表返回结果,我发现这是不可能的。我想知道的是,是否有可能将术语“gocart”作为url(http:www.Bing.com/query?gocart)传递给Google或Bing,并在新的浏览器窗口中返回搜索术语的结果。从我最初的研究来看,这两个搜索引擎似乎都能防止通过URL进行未经授权的查询,我很好奇是否有人发现它有所不同如何从silverlight或google向Bing传递搜索词,silverlight,bing-api,google-search-api,Silverlight,Bing Api,Google Search Api,有没有人幸运地从Silverlight向Bing或Google传递了一个基于url参数的字符串,该字符串将在浏览器中打开搜索结果。我一直在使用Bing API,能够在客户端中搜索和返回结果,我也使用JSON并将值传递给Google API。但是,如果您只想向任一服务发送查询字符串,并通过浏览器结果列表返回结果,我发现这是不可能的。我想知道的是,是否有可能将术语“gocart”作为url(http:www.Bing.com/query?gocart)传递给Google或Bing,并在新的浏览器窗口
谢谢现在无法测试,请尝试:
HtmlPage.Window.Navigate(new Uri("http://www.bing.com/query?gocart", UriKind.Absolute), "_blank");
这将使用提供的url打开一个新的浏览器窗口或选项卡。。。在这方面,谷歌和必应不会有任何不同
MSDN参考链接是如果使用google,您可以使用Yahia的建议获得html呈现的结果,并打开一个格式如下的链接 在搜索api文档中尝试的几个api选项中,我只能在不输入api密钥的情况下更改语言。
(http://www.google.com/#q=gocart&hl=fr 对于法语)页面结果大小等失败,但如果你正在寻找快速和肮脏的东西,没有太多的控制,上述将工作 我制作了一个超链接类:
private class HyperlinkButtonWrapper : HyperlinkButton
{
public void OpenURL(string navigateUri)
{
OpenURL(new Uri(navigateUri, UriKind.Absolute));
}
public void OpenURL(Uri navigateUri)
{
base.NavigateUri = navigateUri;
base.TargetName = "_blank";
base.OnClick();
}
}
然后像这样使用它:
private void ButtonSearch_Click(object sender, System.Windows.RoutedEventArgs e)
{
var hyperlinkwrapper = new HyperlinkButtonWrapper();
hyperlinkwrapper.OpenURL(@"http://www.google.com/#q=gocart");
}
我发现在这个上,我对这个方法有一些问题。它很好地打开了页面,但好像我没有搜索查询输入。似乎它忽略了querystring参数。这发生在某些页面上,而不是所有页面上,因此您可能尚未遇到此问题。