【发布时间】:2016-03-08 21:23:36
【问题描述】:
我们需要至少使用 TLS 1.1 连接到外部服务,这在使用 Java SDK v. 1.9.32 的本地开发服务器上不起作用。有没有办法强制本地开发服务器使用特定版本的 TLS?还是只是 Java SDK 不支持它?
【问题讨论】:
-
你的本地开发服务器是什么?雄猫?老板?
我们需要至少使用 TLS 1.1 连接到外部服务,这在使用 Java SDK v. 1.9.32 的本地开发服务器上不起作用。有没有办法强制本地开发服务器使用特定版本的 TLS?还是只是 Java SDK 不支持它?
【问题讨论】:
安装 JDK 8 后(在我使用 JDK 7 之前),我的本地 Appengine 开发服务器开始使用 TLS 1.2。 JDK 8 uses TLS 1.2 by default.
【讨论】:
除了上述答案之外,由于 JDK 7 上默认禁用 TLS 1.1 和 1.2,如果您不想使用 JDK 8,您还可以尝试使用以下标志修改 dev_appserver.sh 的最后一行:
exec "${RUN_JAVA}" "${SCRIPT_NAME}" \
-Ddeployment.security.TLSv1.1=true -Ddeployment.security.TLSv1.2=true -ea -cp "${JAR_FILE}" \
com.google.appengine.tools.KickStart \
com.google.appengine.tools.development.DevAppServerMain "$@"
或 Windows 上的 dev_appserver.cmd:
java -Ddeployment.security.TLSv1.1=true -Ddeployment.security.TLSv1.2=true -cp "%~dp0\..\lib\appengine-tools-api.jar" ^
com.google.appengine.tools.KickStart ^
com.google.appengine.tools.development.DevAppServerMain %*
【讨论】:
dev_appserver.sh 进行建议的更改。但是,它仍然不适合我:(