【发布时间】:2022-11-04 08:33:49
【问题描述】:
我正在尝试使用 AT 命令为 SIM7000E 模块创建 HTTPS 连接,但该过程在 AT+SHCONN 步骤失败。
出于测试目的,我已经成功地通过 HTTP 将 GET 请求发送到http://httpbin.org 我知道模块中的 SIM 卡已激活并且互联网连接正常。连接到 https://httpbin.org 会导致问题。
证书文件 httpbin-ca.cer 已成功上传到 SIM7000E,使用:
AT+CFSINIT
AT+CFSWFILE=3,"httpbin-ca.cer",0,1188,5000
AT+CFSTERM
证书文件的存在通过以下方式确认:
AT+CFSINIT
AT+CFSGFIS=3,"httpbin-ca.cer"
AT+CFSTERM
它给出了以下输出:
+CFSGFIS: 1188
OK
每个阶段输出的完整诊断和连接过程如下:
AT
OK
AT+CMEE=2
OK
AT+CPIN?
+CPIN: READY
OK
AT+CGMM
SIMCOM_SIM7000E
OK
AT+CGMR
Revision:1351B07SIM7000E
OK
AT+COPS?
+COPS: 0,0,"vodafone UK",3
OK
AT+CSQ
+CSQ: 28,99
OK
AT+CNACT=1,"wap.vodafone.co.uk"
OK
AT+CNACT?
+CNACT: 1,"10.239.xxx.xxx"
OK
上面返回了一个有效的 IP,在这里被空白。
AT+CSSLCFG="convert",2,"httpbin-ca.cer"
OK
AT+SHSSL=1,"httpbin-ca.cer"
OK
AT+SHCONF="URL","https://httpbin.org"
OK
AT+SHCONF="BODYLEN",1024
OK
AT+SHCONF="HEADERLEN",350
OK
AT+SHSSL?
+SHSSL: 1,"httpbin-ca.cer",""
OK
AT+SHCONN
+CME ERROR: operation not allowed
httpbin-ca.cer 文件的内容是:
-----BEGIN CERTIFICATE-----
MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF
ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6
b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL
MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv
b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj
ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM
9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw
IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6
VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L
93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm
jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC
AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA
A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI
U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs
N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv
o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU
5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy
rqXRfboQnoZsG4q5WTP468SQvvG5
-----END CERTIFICATE-----
如果它设置为不使用证书并且只接受任何 SSL 而不会使用以下方式询问问题:
AT+SHSSL=1,""
而不是将其设置为加载的证书,然后AT+SHCONN 可以工作,我能够成功发出 GET 请求。然而,当涉及到 POST 请求时,需要让它只接受特定的证书。
【问题讨论】:
标签: ssl https at-command