laravel api mengembalikan data cara menyelesaikan masalah merentas domain jsonp dan permintaan pos
我想大声告诉你
我想大声告诉你 2017-05-16 16:55:53
0
2
839

Dalam antara muka dingo/api bahagian belakang

laluan

$api = app('api.router');
$api->version('v1', function ($api) {
    $api->get('products','Api\V1\ProductController@index');   
});

Pengawal Produk Pengawal

public function index()
    {
        return Product::all();
    }

Lawati http://001.com/api/products

Data adalah seperti berikut

{"products":[{"id":1,"name":"\u5c0f\u9ec4\u74dc","price":"11.21","sort":0,"status":0,"created_at":"2015-08-03 16:15:07","updated_at":"2015-08-03 16:58:01","b_price":"11.21","no":"001","number":100},{"id":3,"name":"\u897f\u7ea2\u67ff","price":"3.22","sort":0,"status":0,"created_at":"2015-08-03 16:59:34","updated_at":"2015-08-03 16:59:34","b_price":"3.22","no":"003","number":100},{"id":39,"name":"\u4e1d\u74dc","price":"10.00","sort":0,"status":0,"created_at":"2015-08-03 18:30:05","updated_at":"2015-08-03 18:30:05","b_price":"10.00","no":"100","number":1000}]}

Meja hadapan tapak luaran meminta akses kepada antara muka api

$.ajax({
        type: 'get',
        url: 'http://001.com/api/products',
        dataType : 'jsonp',
        jsonp:"jsoncallback",
        success: function(data){
              console.log(data);
        },
        error: function(){

            alert('500 error!')
        }
    });

Hasilnya adalah ralat dan telah dilaksanakan alert('500 error!')

Adakah data yang dikembalikan betul?

Data telah disoal bagaimana untuk mengembalikan data yang betul?

Oleh kerana apabila meja depan membuat permintaan, penyemak imbas melaporkan ralat berikut:

Uncaught SyntaxError: Unexpected token :

Ada sesiapa ada bimbingan

Pelayar mengembalikan yang berikut sehingga format jsonp, bukan?

Jika tidak mengikut format jsonp

Kemudian dingo/api

https://github.com/dingo/api/wiki/Creating-API-Endpoints

Cara mencapai API permintaan merentas tapak

token csrf ditutup

我想大声告诉你
我想大声告诉你

membalas semua(2)
曾经蜡笔没有小新

Matikan token csrf
http://www.cnblogs.com/HD/p/4555369.html

Ty80
php//没用过dingo/api,不过应该差不多
$.ajax({
        type: 'get',
        url: 'http://001.com/api/products?callback=?',
        dataType : 'jsonp',
        jsonp:"jsoncallback",
        success: function(data){
              console.log(data);
        },
        error: function(){

            alert('500 error!')
        }
    });
public function index()
    {
        $callback = Request::input('callback');
        $result = Product::all();
        return $callback($result);//结构为'callback({"products":[]})'
    }
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!