Salesforce Multipart Bulk API请求在Postman报混合内容错误的原因及解决方法
Salesforce Bulk API 批量插入Contact请求示例
接口信息
- Endpoint:
org_url/services/data/v58.0/jobs/ingest/ - 请求方法:POST
请求头
Content-Type: multipart/form-data; boundary="BOUNDARY"Accept: application/json
请求体
--BOUNDARY Content-Type: application/json Content-Disposition: form-data; name="job" { "object":"Contact", "contentType":"CSV", "operation": "insert", "lineEnding" : "LF" } --BOUNDARY Content-Type: text/csv Content-Disposition: form-data; name="content"; filename="content" FirstName,LastName,MailingCity Astro,Nomical,San Francisco Hootie,McOwl,San Francisco Appy,Camper,San Francisco Earnie,Badger,San Francisco --BOUNDARY--
问题描述
上述请求在Workbench中可正常运行,但在Postman中触发错误:
"Mixed content error: cannot send request. The request has been blocked because it requested an insecure HTTP resource."
错误原因
混合内容错误的核心是请求同时涉及HTTPS(安全)和HTTP(非安全)资源:
- 若使用Postman Web版,它运行在浏览器的HTTPS安全上下文里,而请求的
org_url是HTTP协议地址,浏览器的安全策略会拦截这种跨协议的请求。 - Workbench是独立工具或采用了宽松的安全策略,未强制拦截混合内容请求,因此可以正常执行。
解决办法
- 替换为HTTPS协议地址:Salesforce官方接口均支持HTTPS,将请求地址中的
http://改为https://,确保整个请求处于安全协议环境下。 - 切换到Postman桌面版:桌面版Postman不受浏览器混合内容策略限制,直接使用即可绕过拦截。
- 临时调整浏览器安全设置(不推荐):部分浏览器允许临时解除混合内容拦截,但会降低安全性,仅适合临时测试场景。
内容的提问来源于stack exchange,提问作者Rahul
相关产品推荐
相关产品推荐

