PHP   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Javascript-为什么我的路线返回404错误Laravel?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我目前正在尝试对某种形式的帖子提出AJAX请求,但是我尝试向其发送数据的PHP解析脚本返回了我可以通过Chrome开发者工具看到的404错误.这是我的代码

<script type="text/javascript">

function ajax_post(){
    var hr = new XMLhttprequest();
    var url = "/products/parse.blade.PHP";
    var productName = document.getElementById("productName").value;
    var quantityInStock = document.getElementById("quantityInStock").value;
    var pricePerItem = document.getElementById("pricePerItem").value;
    var @R_739_10586@lValuenumber = quantityInStock * pricePerItem;
    var route = "productName="+productName;
    hr.open("POST", url, truE);
    hr.setrequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
        if(hr.readyState == 4 && hr.status == 200) {
            var return_data = hr.responseText;
            document.getElementById("status").innerHTML = return_data;
        }
    }
    hr.send(routE);
    document.getElementById("status").innerHTML = "processing...";
}

</script>

<div class="container-fluid form-container">
  <div class="row">
    <div class="col-lg-3 col-md-12">

            <div class="form-group">
                <input type="text" name="productName" id="productName" placeholder="Product Name" class="form-control" required>    
            </div>

            <div class="form-group">
                <input type="number" name="quantityInStock" id="quantityInStock" placeholder="Quantity in Stock" class="form-control" required> 
            </div>

            <div class="form-group">
                <input type="number" step="0.01" name="pricePerItem" id="pricePerItem" placeholder="Price per Item" class="form-control" required>  
            </div>

            <input type="submit" value="Create Product LisTing" class="btn btn-priMary" onclick="ajax_post();">

            <hr>
            <div id="status"></div>

    </div>
  </div>
</div>

我正在使用Laravel,这个视图product.create和我试图用来解析数据的文件products.parse都在我的views文件夹的products目录中.但是,当我尝试提交时,得到的只是状态div中的“处理中”响应,以及Chrome开发者控制台中mydevsite.dev/products/parse路由的404错误.

我认为我需要定义一条路线,因此我添加了:

Route::post('/products/parse', 'ProductController@parse'); 

哪个返回

return view('products.parse');

但是,这只是将我的错误更改为419.我认为它与CSRF字段有关,但是我不确定如何将其包括在内,因为它不是HTML,而是仅包含表单元素.为什么我的路线返回404419错误,我该如何解决

解决方法:

您发布到错误的URl.

一定是这样的

var url="/products/parse";

并且您还需要发送CSRF令牌(否则将导致419错误),描述为here

将此Meta标签放入您的< head>标签

<Meta name="csrf-token" content="{{ csrf_token() }}">

然后像这样通过jQuery访问它:

$('Meta[name="csrf-token"]').attr('content')

大佬总结

以上是大佬教程为你收集整理的Javascript-为什么我的路线返回404错误Laravel?全部内容,希望文章能够帮你解决Javascript-为什么我的路线返回404错误Laravel?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: