java.net.SocketException - NanoHTTPD (https) - Android

问题描述 投票:0回答:1

我被困住了,到处寻找解决方案,但我认为这不会像从人类那里获得帮助那么有效哈哈。
我设置了一个 NanoHTTPD 服务器来监听 https post 请求:

public ChargingListener(int port, MainActivity activity) {
    super(port);
    try {
        this.activity = activity;
        makeSecure(NanoHTTPD.makeSSLSocketFactory("/keystore.jks", "password".toCharArray()), null);
        start(NanoHTTPD.SOCKET_READ_TIMEOUT, false);
        logger.info(TAG, "Listener created on port: " + port);
    } catch (IOException e) {
        logger.error(TAG, "Error creating listener: " + e.getMessage());
    }
}

当我发送请求时,我收到以下异常(如果需要,我可以粘贴完整的异常堆栈):

java.net.SocketException: Socket is closed

服务器使用http正常工作...
顺便说一句,我使用了 NanoHTTPD 指南中的代码。

更新: 我设法用邮递员发送一个帖子请求并实际上收到了响应,但是当我尝试通过 python requests 库发送一个帖子请求时,这个错误再次出现。

解决方案:默认情况下,postman不会验证自签名证书,但python requests会......
希望这对某人有帮助!

android ssl https nanohttpd
1个回答
0
投票

解决方案:默认情况下,postman不会验证自签名证书,但python requests会......
因此,在发送 post 请求时,只需添加一个“verify=False”标志即可。 希望这对某人有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.