2016-04-28 1166 views
1

我想提出请求并强制它使用Protocol.HTTP_2。 我尝试下面的代码:如何强制okhttp使用http/2进行请求?

import okhttp3.{OkHttpClient, Protocol, Request} 

import scala.collection.JavaConversions._ 
import scala.collection.mutable.ListBuffer 

object Main2 extends App { 
    val url = "https://google.com/" 
    val client = new OkHttpClient.Builder().protocols(ListBuffer(Protocol.HTTP_2)).build() 
    val request = new Request.Builder().url(url).build() 
    val response = client.newCall(request).execute() 
    println(response.body().string()) 
} 

但得到的错误:在线程异常 “主” java.lang.IllegalArgumentException异常:协议不包含HTTP/1.1:[H]

回答

1

OkHttp会自动使用HTTP/2(如果可用),但不能禁用HTTP/1.1。

+0

如果我的服务器复用HTTP/1.1和HTTP/2,它似乎不工作 – pungoyal

相关问题