Javascript 尽管我的路径正确,但在地图上显示某些内容时,laravel中出现错误419
我正在使用google maps api创建一个应用程序,允许用户在特定位置添加标记 但是当我点击地图添加位置时,我得到的所有数据都是正确的,但是我得到了错误19的响应代码…这是我保存数据的代码Javascript 尽管我的路径正确,但在地图上显示某些内容时,laravel中出现错误419,javascript,php,laravel,google-maps,Javascript,Php,Laravel,Google Maps,我正在使用google maps api创建一个应用程序,允许用户在特定位置添加标记 但是当我点击地图添加位置时,我得到的所有数据都是正确的,但是我得到了错误19的响应代码…这是我保存数据的代码 function saveData(lat,lng) { console.log("LAT:"+lat+" LNG:"+lng); var description = document.getElementById('manual_description').value; var formData
function saveData(lat,lng)
{
console.log("LAT:"+lat+" LNG:"+lng);
var description = document.getElementById('manual_description').value;
var formData = new FormData();
console.log("DESC:"+description);
formData.append("latitude", lat); //outputs correctly
formData.append("longitude", lng);//outputs correctly
formData.append("description", description); //outputs correctly
console.log(formData.get("latitude")+" "+formData.get("longitude")+" "+formData.get("description"));
downloadUrl(formData, function(data, responseCode) {
console.log("RESP:"+responseCode);
console.log(data.length);
if (responseCode === 200 && data.length > 1) {
var markerId = getMarkerUniqueId(lat,lng); // get marker id by using clicked point's coordinate
var manual_marker = markers[markerId]; // find marker
manual_marker.setIcon(purple_icon);
infowindow.close();
infowindow.setContent("<div style=' color: purple; font-size: 25px;'> Waiting for admin confirm!!</div>");
infowindow.open(map, manual_marker);
}else{
console.log("RESPONSECODE: "+ responseCode); //419
console.log("DATA: "+data); //html data with title of Page Expired
infowindow.setContent("<div style='color: red; font-size: 25px;'>Inserting Errors</div>");
}
});
function downloadUrl(formData, callback)
{
var xhttp = new XMLHttpRequest;
xhttp.onreadystatechange = function() {
console.log(xhttp.readyState);
if (xhttp.readyState == 4) {
callback(xhttp.responseText, xhttp.status);
}
};
xhttp.open("POST", "http://localhost/cacheFinder/public/save");
xhttp.setRequestHeader('X-CSRF-TOKEN', '{{ csrf_token() }}');
xhttp.send(formData);
}
任何帮助都将不胜感激这是因为在CsrfMiddleware中禁用路由保护或发布有效值将此添加到您的
验证CSRFToken
中间件中
protected $except = [
'/cacheFinder/public/*'
];
或
xmlhttp.setRequestHeader('X-CSRF-TOKEN',window.Cookies.get('u CSRF')代码>将csrf_令牌与数据一起传递,否则将url添加到verifcsrf中间件以跳过此url来验证csrf_令牌(如果您使用post方法将数据传递到laravel),您是否可以显示浏览器网络日志并共享您的信息?我看到了类似您所说的内容。。。u表示受保护的$except=['stripe/*',]@吉涅什乔伊萨??但是我试着把它添加到verifycsrftoken中,没有luck@ShaielndraGupta我的表单在顶部,它是共享的,但这已经在我的html中了!这就是你的意思吗?meta是“存储”-只需要名为“X-CSRF-TOKEN”的post头和它的值或post“\u-TOKEN”,那么添加一个名为“X-CSRF-TOKEN”的头和什么值@michail1982i将我的代码更新为:xhttp.open(“POST”,”);xhttp.setRequestHeader('X-CSRF-TOKEN',“{CSRF_TOKEN()}”);xhttp.send(formData);但仍然没有更改如果在中间件中禁用CSRF解决了问题,则发送无效的令牌我添加了受保护的$except=['*'];错误改为500i我尝试了这个方法,结果无效:xhttp.setRequestHeader('X-CSRF-TOKEN',“{CSRF_TOKEN()}”);然后我尝试了你的,它说的是窗口。Cookies是未定义的$('meta[name=“CSRF TOKEN”]')。attr('content')
,而不是窗口。Cookies.get('u CSRF'))
将此
添加到您的头中,同时也添加xmlhttp.setRequestHeader(“内容类型”,“应用程序/x-www-form-urlencoded”);
protected $except = [
'/cacheFinder/public/*'
];
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");