2014-11-25 85 views
0

我需要通過澤西客戶端爲REST調用設置這些標頭。 的Clickate消息發送REST調用針對平針織客戶端請求標頭的錯誤?

curl -i \ 
      -X POST \ 
      -H "X-Version: 1" \ 
      -H "Content-Type: application/json" \ 
      -H "Authorization: Bearer Your Authorization Token" \ 
      -H "Accept: application/json" \ 

我的代碼是:

Client client = Client.create(); 
WebResource webResource = client.resource("https://api.clickatell.com/rest/message"); 

ClientResponse response = webResource 
          .header("Authorization", "Bearer clickATellAuthKey")  
          .header("X-Version", "1") 
          .header("Content-Type", "application/json") 
          .header("Accept", "application/json") 
          .post(ClientResponse.class, input); 

我收到此錯誤:

{"error":{"code":"001","description":"Authentication failed","documentation":" http://www.clickatell.com/help/apidocs/error/001.htm "}}

文件說沒有指定AUTH頭。該請求工作正常在郵遞員(鉻平安客戶端擴展)具有相同的標題

需要幫助。

回答

0

謝謝@whatever_sa在代碼中還有一些需要改進的地方,還有一個關於auth關鍵問題的問題,至少讓我再次檢查auth關鍵字。這裏是工作代碼

ClientResponse response = webResource.type(MediaType.APPLICATION_JSON).accept(MediaType.APPLICATION_JSON)     
         .header(MessageServices.API_AUTH_HEADER, MessageServices.AUTH_KEY) 
         .header(MessageServices.API_VERSION_HEADER, MessageServices.API_VERSION)        
         .post(ClientResponse.class, input); 
2

1)您的標題似乎正在經歷。如果他們不是,你會得到一個關於不設置版本標題的錯誤。

2)001錯誤表示您的身份驗證令牌未指定或不正確。

3)我建議你複製並粘貼你的整個認證令牌,然後重試。小心_或。字符,因爲它們是令牌的一部分。