gpt4 book ai didi

google-app-engine - Apache HTTP 客户端——仍然不能从 GAE/J 中使用

转载 作者:行者123 更新时间:2023-12-02 05:00:51 25 4
gpt4 key购买 nike

希望最近发布的出站套接字 API 已解决此问题,但事实并非如此 - 这是尝试建立 HTTP 连接时的错误:

INFO: I/O exception (java.net.SocketException) caught when connecting to the target host: Operation failure: setSocketOptions: Not yet implemented

Google 在官方文档中指出:

You cannot use most getsockopt/setsockopt calls.

问题是,现在有没有人知道如何解决? urlfetch 不是一个选项,我想与客户端证书建立 SSL 连接,urlfetch 不支持它。

最佳答案

如果你只想让 HttpClient 在 AppEngine 上运行,试试这个:

HttpClient client = new DefaultHttpClient(new AppEngineClientConnectionManager());

使用以下未设置任何套接字选项的自定义 ClientConnectionManager

在 AppEngine 1.8.1 上使用 HttpClient 4.2.5 和一个简单的 HttpGet 进行了测试——您可能需要覆盖/重新配置更多内容,具体取决于您对 HttpClient 的使用情况:

class AppEngineClientConnectionManager extends BasicClientConnectionManager {    
@Override
protected ClientConnectionOperator createConnectionOperator(SchemeRegistry schreg) {
return new DefaultClientConnectionOperator(schreg) {
@Override
protected void prepareSocket(Socket sock, HttpContext context, HttpParams params)
throws IOException {
// Don't set any socket options.
}
};
}
}

关于google-app-engine - Apache HTTP 客户端——仍然不能从 GAE/J 中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16421536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com