我必须向一个端点发出POST
请求,该请求应该包含在客户端证书中,这里的问题是,我收到的客户端证书cert-chain是一个字符串(格式如下)。
-----BEGIN CERTIFICATE-----
MIID9jCCAt6gAwIBAgIQNwHqBnL+445eqCUKVWroxDANBgkqhkiG9w0BAQsFADCB
XufZCQ4mDV3MU0z+wsS4alR7b410V5Wet36pjUkrWtHEI2dBWZFzCOay19Vpb2V2
0M/zl07YpoZYxw==
-----END CERTIFICATE-----
注意:字符串要大得多:)
我尝试将字符串转换为NSData
对象并创建一个PKCS12
对象,但转换为NSData本身失败。
我的转变方式是let dataDecoded = Data(base64Encoded: certChainString, options: .ignoreUnknownCharacters)
这将返回空数据对象,因为dataDecoded
的大小为0字节。
如果提供了certChainString,如何发送POST请求和证书?
1条答案
按热度按时间ehxuflar1#
您是否尝试在它仍然包含
-----BEGIN CERTIFICATE-----
和-----END CERTIFICATE-----
时对其进行转换?它不是有效的base64与那些包括,所以删除他们第一。
如果API请求返回重要数据,请考虑先阅读更多关于Security topic的内容或使用frameworks。