簡體   English   中英

從Apache Http客戶端舊版遷移到OkHttp

[英]Migrating from Apache Http client legacy to OkHttp

我正在將一些代碼從Apache HTTP客戶端遷移到OkHttp,因為Apache客戶端已在API 23中棄用,而現在在API 29中已完全淘汰。 總的來說,我並沒有太多的問題,但是我找不到對應的一行:

myHttpPost.addHeader(new BasicScheme().authenticate(
                    new UsernamePasswordCredentials(myUser, myPassword), HttpPost));

我調試了這一行,它生成了一個類似於此字符串:

授權:基本RU5YRU5EUkEASDASDQWEQFASkLTk2ZjgtOTASDQWEkMWNkYTA1

在文檔中閱讀它我可以看到authenticate方法:

為給定的憑據集生成授權字符串

而且UsernamePasswordCredentials基本上是根據我的用戶名和密碼創建該憑據的,但是我在OkHttp中找不到等效的憑據,有人遇到過這個問題嗎?

我已經設法在OkHttp docs中找到一個類Authenticator ,但是我不太確定這是我要找的東西。

您正在尋找Credentials.basic()

        String credential = Credentials.basic("jesse", "password1");
        return Request.Builder()
            .header("Authorization", credential)
            ...
            .build();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM