【问题标题】:how to send POST(javascript) to laravel blade file?如何将 POST(javascript) 发送到 laravel 刀片文件?
【发布时间】:2018-09-05 08:02:18
【问题描述】:

我在 Laravel5 中制作了一个网络摄像头页面。
我想将 POST(javascript, WEBCAMjs) 发送到crop.blade.php(laravel)。

仅使用 php 运行时,我的代码运行良好。
=> form.setAttribute("action", "crop.php"); 但是,如果我尝试将其发送到 laravel(crop.blade.php),它会返回 MethodNotAllowedHttpException。
=> form.setAttribute("action", "crop.blade.php");

我该如何解决这个问题?
提前感谢您的帮助!

Webcam.snap( function(data_uri) {
        var obj1 = data_uri
        var form = document.createElement("form");
        form.setAttribute("charset", "UTF-8");
        form.setAttribute("method", "Post");
        #form.setAttribute("action", "crop.php");
        form.setAttribute("action", "crop.blade.php");
        var hiddenField = document.createElement("input");
        hiddenField.setAttribute("type", "hidden");
        hiddenField.setAttribute("name", "raw");
        hiddenField.setAttribute("value", obj1);
        form.appendChild(hiddenField);

        var url ="crop"

        var status = "toolbar=no,directories=no,scrollbars=no,resizable=no,status=no,menubar=no,width=1240, height=1200, top=0,left=20"

        document.body.appendChild(form);
        form.submit();
}

【问题讨论】:

  • 缺少 CSRF 字段/令牌?

标签: javascript php laravel http-post


【解决方案1】:

这将是路由。如果您转到 web.php 文件,您将看到您正在为页面加载的路线。它可能如下所示:

Route::get('crop', function () {
    return view('crop');
});

您还需要以下内容才能允许发布请求

Route::post('crop', function () {
    // Logic for the post request
});

显然使用控制器而不是闭包会更好,但这是一般的想法。

【讨论】:

  • 我很抱歉,实际上,我已经尝试过这种方法。但是结果还是 MethodNotAllowedHttpException。
  • 您的web.php 文件的内容是什么?我想您需要将 JavaScript 代码从 form.setAttribute("action", "crop.blade.php") 更改为 form.setAttribute("action", "/crop")。 URL 应该是端点,而不是 blade.php 文件。
猜你喜欢
  • 1970-01-01
  • 2019-10-01
  • 2014-03-26
  • 2018-09-03
  • 2020-07-04
  • 1970-01-01
  • 2013-03-27
  • 2020-05-19
  • 1970-01-01
相关资源
最近更新 更多