首頁  >  文章  >  Java  >  為什麼我的 HttpURLConnection 請求中的標頭未被識別?

為什麼我的 HttpURLConnection 請求中的標頭未被識別?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-09 01:22:02867瀏覽

Why are Headers Not Being Recognized in My HttpURLConnection Requests?

向HttpURLConnection 要求新增標頭

嘗試向HttpURLConnection 要求新增標頭時,您可能會遇到伺服器無法確認的情況標頭頭資訊。如果使用 setRequestProperty()設定請求屬性無法解決問題,請考慮以下解決方案:

解決方案:

確保標頭設定正確,請嘗試執行下列步驟:

  1. 建立一個新實例HttpURLConnection:

    URL myURL = new URL(serviceURL);
    HttpURLConnection myURLConnection = (HttpURLConnection)myURL.openConnection();
  2. 準備標頭值:

    String userCredentials = "username:password";
    String basicAuth = "Basic " + new String(Base64.getEncoder().encode(userCredentials.getBytes()));
  3. 設定“授權” header:

    myURLConnection.setRequestProperty ("Authorization", basicAuth);
  4. 設定連接:

    myURLConnection.setRequestMethod("POST"); // Assuming a POST request
    myURLConnection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    myURLConnection.setRequestProperty("Content-Length", "" + postData.getBytes().length);
    myURLConnection.setRequestProperty("Content-Language", "en-US");
    myURLConnection.setUseCaches(false);
    myURLConnection.setDoInput(true);
    myURLConnection.setDoOutput(true);

此修改後的方法應確保「Authorization」標頭已正確新增至請求中並且應由伺服器接收。

以上是為什麼我的 HttpURLConnection 請求中的標頭未被識別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn