You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ColdFusion的CFHTTP模拟表单提交Authorize.net失败原因咨询

问题原因分析
  • 请求头匹配错误:原HTML表单由浏览器发起提交时,会自动发送包含text/html的Accept请求头,明确告知服务器需要返回HTML格式的页面内容。但你在CFHTTP请求中添加了Accept-Type: application/json头,这会让Authorize.net服务器判定你需要JSON格式响应,因此不会返回预期的完整HTML页面。
  • 缺少浏览器环境标识:浏览器发起请求时会自动携带User-Agent等标识头,表明请求来自浏览器客户端。CFHTTP默认的User-Agent是ColdFusion相关标识,服务器可能会据此判断请求来源非浏览器,返回非预期的响应内容。
修复方案
  • 移除错误的Accept-Type头,或替换为符合网页请求的格式:

    <cfhttpparam type="header" name="Accept" value="text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" />
    
  • 添加模拟浏览器的User-Agent头,让服务器识别为浏览器请求:

    <cfhttpparam type="header" name="User-Agent" value="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36" />
    
  • 调整后的完整CFHTTP代码示例:

    <cfhttp url="https://test.authorize.net/payment/payment" method="post">
        <cfhttpparam type="header" name="Accept" value="text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8" />
        <cfhttpparam type="header" name="User-Agent" value="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36" />
        <cfhttpparam type="formfield" name="token" value="#response#" />
    </cfhttp>
    

内容的提问来源于stack exchange,提问作者John P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 10:03:15