recherche

Maison  >  Questions et réponses  >  le corps du texte

l'api laravel renvoie des données sur la façon de résoudre les problèmes inter-domaines jsonp et de publier des requêtes

Dans l'interface backend dingo/api

routage

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

Contrôleur ProduitController

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

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

Les données sont les suivantes

{"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}]}

La réception du site externe demande l'accès à l'interface 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!')
        }
    });

Le résultat était une erreur et a été exécuté alert('500 error!')

Les données renvoyées sont-elles correctes ?

Les données ont été interrogées. Comment renvoyer les données correctes ?

Parce que lorsque la réception a fait la demande, le navigateur a signalé l'erreur suivante :

Uncaught SyntaxError: Unexpected token :

Quelqu'un a-t-il des conseils ?

Le navigateur renvoie ce qui suit jusqu'au format jsonp, n'est-ce pas ?

Si n'est pas conforme au format jsonp

Alors

dingo/api

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

Comment réaliser une API de requête intersite

le jeton csrf est fermé

我想大声告诉你我想大声告诉你2749 Il y a quelques jours877

répondre à tous(2)je répondrai

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 16:57:53

    Désactivez le jeton csrf
    http://www.cnblogs.com/HD/p/4555369.html

    répondre
    0
  • PHP中文网

    PHP中文网2017-05-16 16:57:53

    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":[]})'
        }
    

    répondre
    0
  • Annulerrépondre