首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Laravel框架上建立WhatAapp云网络钩子

如何在Laravel框架上建立WhatAapp云网络钩子
EN

Stack Overflow用户
提问于 2022-08-25 15:44:47
回答 1查看 610关注 0票数 0

我一直试图在我的Laravel项目上建立WhatsApp云API。当有人发送消息时,我被困在尝试设置web钩子以接收WhatsApp通知。下面是我的代码,它不是简单地给出服务器错误或405方法不允许的错误,在WhatsApp云api方面它没有通过验证点。

API接口

代码语言:javascript
复制
Route::GET('/webhook' , 'admin\InventoryInvoiceController@webhook')->name('webhook');

控制器

代码语言:javascript
复制
public function webhook() {
    if($_SERVER['REQUEST_METHOD']=="GET"){
        echo $_GET['hub_challenge']; //respond back hub_callenge key
        http_response_code(200);
    }else{
        $data = json_decode(file_get_contents('php://input'), true);
        error_log(json_encode($data)); //print inbound message     
    }
    
}

我已经将此路由添加到异常中,因此它是在需要CSRF验证时运行的。在Whatsapp API云端接收到的错误:

无法验证

回调URL或验证令牌。请验证所提供的信息,或稍后再试。

接下来我能试试什么?

EN

回答 1

Stack Overflow用户

发布于 2022-08-29 15:20:13

问题是我没有将我的路由添加到CSRF异常中,这将使Whatsapp云api发送的请求无效。测试前一定要这样做!以下是代码:

代码语言:javascript
复制
public function webhook(Request $request) {
$mode = $request->hub_mode;
$challenge = $request->hub_challenge;
$token = $request->hub_verify_token;
echo $challenge;
}

public function __construct() {
    $this->middleware('auth:admin', 
        ['except' => ['webhook', 'webhookpost']]
    );
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73490389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档