Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Laravel 5.1 consumindo serviço de wsdl de sabão usando controlador e modelo


Foi assim que fiz o sabonete funcionar no Laravel 5.1
  1. instalação limpa do laravel 5.1
  2. instale o artisaninweb/laravel-soap

  3. crie um controlador SoapController.php
    <?php
    namespace App\Http\Controllers;
    use Artisaninweb\SoapWrapper\Facades\SoapWrapper;
    class SoapController extends Controller {
    public function demo()
    {
    // Add a new service to the wrapper
        SoapWrapper::add(function ($service) {
           $service
           ->name('currency')
           ->wsdl('path/to/wsdl')
           ->trace(true);
         });
    $data = [
             'user' => 'username',
             'pass'   => 'password',
            ];
    // Using the added service
    SoapWrapper::service('currency', function ($service) use ($data) {
    
    var_dump($service->call('Login', [$data]));
    var_dump($service->call('Otherfunction'));
    });
    }
    }
    

  4. Crie uma rota em seu routes.php

Route::get('/demo', ['as' => 'demo', 'uses' => '[email protected]']);

Se necessário, você também pode usar a extensão do modelo conforme descrito aqui