Laravel 传递 URL 获取方法

Laravel passing URL to get method

http://localhost:8000/image/https://pbs.twimg.com/profile_images/443395572783800322/nXTuit5o.jpeg

我想把url传给这样的路线

路线是这样的

Route::get('/image/{url}','ImageController@uploadImageViaUrl');

我不认为这是可能的,因为基本上你是在用所有的斜杠来扩展路线。在图像中的 https 部分 url 之后,您还有 5 个斜杠,这将使您的路线具有以下奇怪的模式:

Route::get('/image/{url}/{someting?!}/{someting?!}/{someting?!}/...', 'ImageController@uploadImageViaUrl');

考虑使用 POST 请求上传图片,也许 this post 会有帮助?

而不是使用这种糟糕的做法

http://localhost:8000/image/https://pbs.twimg.com/profile_images/443395572783800322/nXTuit5o.jpeg

考虑使用

http://localhost:8000/image?link=https://pbs.twimg.com/profile_images/443395572783800322/nXTuit5o.jpeg

在routes.php

Route::get('/image','ImageController@uploadImageViaUrl');

在那个Controller中你可以获得img url

$img_link = request()->query('link');