一开始我是这么写的
# 获取更新后的证书和私钥文件路径CERT_PATH=$(cat ./netlify_cert/domain.com.cert.pem)KEY_PATH=$(cat ./netlify_cert/domain.com.key.pem)FULLCHAIN_CERT_PATH=$(cat ./netlify_cert/domain.com.fullchain.pem)
# 使用 Netlify API 上传证书curl -X POST \ -H "Authorization: Bearer $NETLIFY_API_KEY" \ -d "key=${KEY_PATH}" \ -d "ca_certificates=${FULLCHAIN_CERT_PATH}" \ -d "certificate=${CERT_PATH}" \ "https://api.netlify.com/api/v1/sites/${NETLIFY_SITE_ID}/ssl"这么写看着没用什么问题,但是-d命令是默认进行urlencode的,这样子我的证书就会改变。需要改成--form-string才行。
这种默认就urlencode的,curl -h中又没说明,真的好坑