将完整的 URL 作为 Ajax 类中的参数传递 - Laravel 5.1 例程
Passing full URL as parameter in Ajax call - Laravel 5.1 routing
编辑:我想我应该添加 Laravel 5.1 部分!
Ajax 呼叫正在由如下路由处理:
Route::get('ajax/{action}', ['uses' => 'AjaxController@helpers', 'as' => 'ajax.helpers']);
我希望 encodeURIcompponent()
函数能够完成这项工作,但是当我在下面调用时 Laravel 5.1 returns 404。如果 uri 不包含编码的 http://
它有效。
这就是 ajax 调用中的 url 的样子 returns 404:
http://my.app/ajax/act=url&u=http%3A%2F%2Fgoogle.com
我有一个 ajax 调用需要检查 url 我作为参数传递
用户将在表单字段中输入 url,我将其捕获到名为 website
的变量中
我的 ajax 呼叫需要接受:
'/ajax/act=url&u=' + website;
我这样做是为了构建 url 然后传递给 jQuery $.getJSON
调用:
var url = '/ajax/act=url&&u=' + encodeURIComponent(website);
但是我从服务器返回 404。如果我删除协议 (http://
),它就可以正常工作。
如何在 ajax 调用中将完整的 url 作为参数传递?谢谢!
您的 URL 有误。您需要:
var url = '/ajax/act=url&u=' + encodeURIComponent(website);
而不是:
var url = '/ajax/act=url&&u=' + encodeURIComponent(website);
你有 &&
而不是 &
,但是你告诉我们你的 ajax 呼叫接受:
'/ajax/action=url&u=' + website;
var url = encodeURI(website);
$.ajax({
url: "your url here",
type: "POST",
dataType: "HTML",
async: false,
data: {"u": url},
success: function(data) {
//
}
});
尝试将 get 更改为 post
var url = '/ajax/?act=url&u=' + encodeURIComponent(website);
这应该有效!
编辑:我想我应该添加 Laravel 5.1 部分!
Ajax 呼叫正在由如下路由处理:
Route::get('ajax/{action}', ['uses' => 'AjaxController@helpers', 'as' => 'ajax.helpers']);
我希望 encodeURIcompponent()
函数能够完成这项工作,但是当我在下面调用时 Laravel 5.1 returns 404。如果 uri 不包含编码的 http://
它有效。
这就是 ajax 调用中的 url 的样子 returns 404:
http://my.app/ajax/act=url&u=http%3A%2F%2Fgoogle.com
我有一个 ajax 调用需要检查 url 我作为参数传递
用户将在表单字段中输入 url,我将其捕获到名为 website
我的 ajax 呼叫需要接受:
'/ajax/act=url&u=' + website;
我这样做是为了构建 url 然后传递给 jQuery $.getJSON
调用:
var url = '/ajax/act=url&&u=' + encodeURIComponent(website);
但是我从服务器返回 404。如果我删除协议 (http://
),它就可以正常工作。
如何在 ajax 调用中将完整的 url 作为参数传递?谢谢!
您的 URL 有误。您需要:
var url = '/ajax/act=url&u=' + encodeURIComponent(website);
而不是:
var url = '/ajax/act=url&&u=' + encodeURIComponent(website);
你有 &&
而不是 &
,但是你告诉我们你的 ajax 呼叫接受:
'/ajax/action=url&u=' + website;
var url = encodeURI(website);
$.ajax({
url: "your url here",
type: "POST",
dataType: "HTML",
async: false,
data: {"u": url},
success: function(data) {
//
}
});
尝试将 get 更改为 post
var url = '/ajax/?act=url&u=' + encodeURIComponent(website);
这应该有效!