尽管我检查了以前在java中用于web搜索的azure认证的答案,但即使帐户密钥与我在Windows Azure Marketplace中的配置文件中的密钥完全相同,我仍然得到了HTTP错误代码:401。我尝试生成一个新的,但也没有工作。
所以任何帮助将非常感激。
这里是java代码(类似于其他人使用它):
String bingUrl = "https://api.datamarket.azure.com/Bing/Search/Web?Query='multiple'&$top=4&$skip=1&$format=json";
String accountKey = "key";
byte[] encoding = Base64.encodeBase64((accountKey + ":" + accountKey).getBytes());
String accountKeyEnc = new String(encoding);
URL url = new URL(bingUrl);
URLConnection urlConnection = url.openConnection();
urlConnection.setRequestProperty("Authorization", String.format("Basic ", accountKeyEnc));
BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
String inputLine;
StringBuffer sb = new StringBuffer();
while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);
sb.append(inputLine);
in.close();
System.out.println( sb.toString());我得到的错误代码是:
java.io.IOException: Server returned HTTP response code: 401 for URL:
https://api.datamarket.azure.com/Bing/Search/Web?Query='multiple'&$top=4&$skip=1&$format=json
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown
Source) at
sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown
Source) at queryengines.WebSample.DisplayResults(WebSample.java:37)
at queryengines.WebSample.main(WebSample.java:19)