Javascript 如何在Laravel 4中获取从Angular传递的FormData值?
我正在使用angular上传图像(同时还有其他数据),并使用angular服务传递给Laravel的路由,所有这些都使用javascript中的Javascript 如何在Laravel 4中获取从Angular传递的FormData值?,javascript,php,angularjs,coffeescript,laravel-4,Javascript,Php,Angularjs,Coffeescript,Laravel 4,我正在使用angular上传图像(同时还有其他数据),并使用angular服务传递给Laravel的路由,所有这些都使用javascript中的FormData函数。以下是我上传的代码(在coffeescript中): 而我的上传服务就是这样,指向拉雷维尔的路线: app.factory "UploadService", ["$resource", ($resource) -> news: $resource("upload/news") member: $resource
FormData
函数。以下是我上传的代码(在coffeescript中):
而我的上传服务
就是这样,指向拉雷维尔的路线:
app.factory "UploadService", ["$resource", ($resource) ->
news: $resource("upload/news")
member: $resource("404/upload/member")
]
我的问题是,我无法读取从FormData
传递到Laravel的数据,即使这样:
return Response::json(['data' => $_POST['title']]);
或
将返回未定义的索引“title”,我的代码的哪一部分是错误的?谢谢您的帮助。这是我刚刚做的一个测试,用于检查FormData是否有效:
Route::post('test', function() {
Log::info(Input::all());
return Response::json(['data' => Input::all()]);
});
然后跟踪日志:
php artisan tail
你应该得到这样的东西:
[2014-04-04 20:10:19] server.INFO: {"_token":"MIFCleetMa029UGpUcvXUhawmVdJyl65zYBmXDHM","id":"1""first_name":"Antonio Carlos","last_name":"Ribeiro"}
这是我的(普通的)Javascript代码,应该在Angular应用程序中也能正常工作
var form = document.getElementById('form1');
var formData = new FormData(form);
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://development.consultoriodigital.net/test', true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
console.log(xhr.responseText);
}
}
xhr.send(formData);
您还必须将表单返回控制台
form1
表单可以包含任意数量的表单输入,这无关紧要
关于这一行的注释:
return Response::json(['data' => Input::get['title']]);
应该是
return Response::json(['data' => Input::get('title')]);
您是否尝试通过以下方式转储所有输入数据:dd(input::all());我注意到您在问题中使用了Input::get['title],这无论如何都不起作用
return Response::json(['data' => Input::get['title']]);
return Response::json(['data' => Input::get('title')]);