我正试图通过vue-resource发送一个帖子请求,我似乎无法弄清楚我做错了什么.
我正在使用Laravel 5.1来处理请求.
以下jquery代码可以在我的Vue方法中正常工作.
$.ajax({
type: 'POST',
url: '/purchase/save-cart-items',
data: { 'purchaseItems' : purchaseItems},
success: function (response) {
if(response == "ok") {
alert("Cart saved successfully.");
} else {
alert('There was a problem saving this cart. Please try again.');
}
}
});
Run Code Online (Sandbox Code Playgroud)
但是,使用以下vue-resource post请求替换上面的jquery由于某种原因不起作用.我确信这很简单,但我似乎无法弄明白.Vue-resource正确地包含在项目中,因为我正在使用它来获取请求而没有问题.
this.$http.post('/purchase/save-cart-items', {purchaseItems:purchaseItems}, function (data, status, request) {
alert("Cart saved successfully.");
}).error(function (data, status, request) {
alert('There was a problem saving this cart. Please try again.');
});
Run Code Online (Sandbox Code Playgroud) 这个功能曾经为我工作,直到有一天facebook决定强制执行一些更改.
function get_facebook_cookie() {
$app_id = '[MyAppID]';
$application_secret = '[MyAppSecrect]';
if(isset($_COOKIE['fbs_' . $app_id])){
$args = array();
parse_str(trim($_COOKIE['fbs_' . $app_id], '\\"'), $args);
ksort($args);
$payload = '';
foreach ($args as $key => $value) {
if ($key != 'sig') {
$payload .= $key . '=' . $value;
}
}
if (md5($payload . $application_secret) != $args['sig']) {
return null;
}
return $args;
} else {
return null;
}
}
Run Code Online (Sandbox Code Playgroud)
我能够轻松获得FB用户访问令牌
$cookie['access_token']
Run Code Online (Sandbox Code Playgroud)
现在似乎我不能再检索此信息了.
我成功(轻松)能够对我的javascript代码进行必要的更改,但我有点难以在php端.作为一个快速的说明我正在使用codeigniter,我在尝试使用FB PHP SDK发挥得很好时遇到了很多麻烦,我也没有看到任何将PHP 3 SDK集成到codeigniter中的例子所以我是寻找一个快速而肮脏的解决方案,这将允许我从cookie获取访问令牌,从而允许我使用以下调用Facebooks API:
'https://api.facebook.com/method/friends.getAppUsers?access_token=' . $cookie['access_token'];
Run Code Online (Sandbox Code Playgroud)
任何帮助是极大的赞赏.
我正在尝试使用tinysort作为我使用jquery mobile构建的移动应用程序的一部分.我的应用程序找到了用户位置附近的位置,我希望能够快速对结果进行排序,而无需花时间重新查询数据库.
所以,我想要做的是能够使用tinysort重新排序结果,如果用户在该区域中有一个最喜欢的位置,然后是距离,另外我希望能够按属性"beenthere"进行排序用户已标记他们去过一个地方.
这就是我想要做的事情:按收藏排序:
$("ul#places>li").tsort('',({order:"desc",attr:"myfav"},{order:"asc",attr:"dist"}));
Run Code Online (Sandbox Code Playgroud)
排序方式:
$("ul#places>li").tsort('',({order:"desc",attr:"beenthere"},{order:"asc",attr:"dist"}));
Run Code Online (Sandbox Code Playgroud)
默认排序://这很简单,没有问题:
$("ul#places>li").tsort('',{order:"desc",attr:"dist"});
Run Code Online (Sandbox Code Playgroud)
使用默认列表顺序,如:
<ul id="places">
<li myfav="0" beenthere="0" dist=".02">Hot Dog Stand</li>
<li myfav="1" beenthere="0" dist=".08">Joe's Shack</li>
<li myfav="0" beenthere="1" dist=".10">Frick frack</li>
<li myfav="1" beenthere="1" dist=".15">Mama's</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
排序方式应该返回:
排序方式应该返回:
然后回到按距离排序:
我对上面的tsort的调用只是不使用多个属性选择器,我的语法错误或者你不能对多个标准进行排序.
任何有关如何通过tsort或其他解决方案实现此目标的想法表示赞赏!
当我发送单个地理编码请求时,我最近开始从Google Map API获取Over Query Limit状态响应.我真的很困惑为什么会这样?我绝对没有达到每日2,500个请求限制.
此外,如果我只是简单地将我的请求(http://maps.googleapis.com/maps/api/geocode/json?address=1125+First+Avenue,New + York,NY&sensor = false)发布到浏览器中很好,我得到了适当的回应.
如果有人有任何想法,我会很感激.
我在整个项目中使用 json_encode 没有问题,除了一个实例。
我从一个页面进行了 ajax 调用,就像我在其他页面中所做的那样,由于某些奇怪的原因,生成的 json 在字符串的末尾附加了一个 1。
我的返回字符串看起来像这样
{
"overtime": "yes"
}1
Run Code Online (Sandbox Code Playgroud)
什么可能导致这种情况?我已经从字面上注释了返回此字符串的类中的所有内容,并且我只有以下代码。
$reservation = ['overtime' => 'yes'];
return json_encode($reservation, JSON_PRETTY_PRINT);
Run Code Online (Sandbox Code Playgroud)
我的 ajax 请求是这样的
$.ajax({
type: 'POST',
url: "{{ URL::action('Controllers\\PurchasesController@calculateReservation') }}",
data: { 'arrive' : arrive, 'depart' : depart},
dataType: 'json',
success: function(response) {
alert(response);
}
});
Run Code Online (Sandbox Code Playgroud)
警报不会触发,也不会显示任何内容,因为 json 无效,将 1 附加到字符串的末尾。
jquery ×3
php ×2
ajax ×1
codeigniter ×1
facebook ×1
geocoding ×1
google-maps ×1
javascript ×1
json ×1
oauth-2.0 ×1
vue.js ×1