2012-06-21 9 views
5

検索APIのAzure Marketplaceの認証がどのように私はアズールMarketplaceから新しいBingの検索APIを使用するためにJavaで認証を行うことができますか?移行ガイドでは、JavaビングのJava

答えて

8

についての情報をご提供していないあなたは、あなたをエンコードする必要がありますaccountKeyをBase64に設定し、Authorizationヘッダーを使用して各リクエストに渡します。

String bingUrl = "https://api.datamarket.azure.com/Bing/Search/................"; 

String accountKey = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA="; 
byte[] accountKeyBytes = Base64.encodeBase64((accountKey + ":" + accountKey).getBytes()); 
String accountKeyEnc = new String(accountKeyBytes); 

URL url = new URL(bingUrl); 
URLConnection urlConnection = url.openConnection(); 
urlConnection.setRequestProperty("Authorization", "Basic " + accountKeyEnc); 

... 

このコードはMigrating to the Bing Search API in Windows Azure Marketplace文書に見出さPHP例に基づいています。

更新:accountKey +「:」encodeBase64コールを修正、それはこのようにする必要があります+ accountKey

+0

やり方が正しいと思えるが、この方法は私がresponceを得るためのsetRequestPropertyで何かが相違がなければなりませんメッセージ "基本認証が必要です。アカウントキーをパスワードとして入力してください –

+1

コードサンプルを更新しました –

+0

あなたの新しいコードが「不正なリクエスト」を生成しましたhttpsCon.setRequestProperty(" Authorization:Basic "、accountKeyEnc );しかし、私は再び "Basic authentication is required ..."というメッセージを受け取りました。@sandrinodimattia –

関連する問題