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

C#开发WhatsApp Business Platform Webhook遇URL验证异常

问题原因及解决办法

错误原因

你用的是Web Forms页面,这类页面默认会自动渲染完整的HTML页面结构(包括<form>标签、页面框架代码等)。哪怕你在Page_Load里写了Response.Write(hubChallenge),页面生命周期后续还是会输出默认的页面内容,导致响应里除了hubChallenge,还混入了页面的换行符、HTML标签等多余字符,不符合Meta验证要求的纯文本返回hubChallenge的规则。

解决办法

修改代码,在输出hubChallenge后立刻终止响应,阻止页面输出后续的默认内容,同时设置响应类型为纯文本避免编码问题:

public partial class WebForm1 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string hubMode = Request["hub.mode"];
        string hubChallenge = Request["hub.challenge"];
        string hubVerify_token = Request["hub.verify_token"];
        
        if (hubVerify_token == "pippoplutopaperino")
        {
            // 设置响应为纯文本类型,确保返回内容格式正确
            Response.ContentType = "text/plain";
            // 输出验证字符串
            Response.Write(hubChallenge);
            // 终止响应,彻底阻止页面输出后续默认内容
            Response.End();
        }
    }
}

额外注意事项:

  • 检查WebForm页面是否关联了MasterPage,如果有,MasterPage里的额外输出也会混入响应,建议暂时取消关联或清空MasterPage的内容
  • 打开对应的.aspx文件,只保留页面指令(比如<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="YourNamespace.WebForm1" %>),删除默认生成的<form>、<div>等HTML标签,避免多余内容输出

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 06:29:54