2017-11-24 12 views
1

Twinfieldは、オランダに拠点を置くTwinfield Internationalが製造、管理する中小企業向けのオンライン財務会計ソフトウェアパッケージです。 20カ国の15,000人以上の加入者が使用しています。twinfield APIとlaravelとの統合

私はそのAPIを統合したいと思います。私はlaravelをインストールして、いくつかの基本的なAPIを作成しましたが、その巨大なものです。統合の例とはどのようにリンクしていますか?私を助けてください。

+0

ツインフィールドサポートの質問です。最初に[documentation](https://c3.twinfield.com/webservices/documentation/#/Welcome)を開き、提供されているものを確認してください(https://c3.twinfield.com/webservices/documentation)。 /#/ CodeExamples)。 – Tpojka

答えて

0

これは完全なコードではなく、twinfieldのログイン情報を提供します。私はtwinfieldのために多くのライブラリが与えられていますが、サンプルコードを与えていないので、また立ち往生しています。 PHP統合のための文書はありません。私はtwinfieldに非常に失望しています。あなたがテストアカウントを持っていても、それを無効にすると永久に無効になります。ここでjsonresponseはカスタムメイドなので、エラーがあれば$ e-> getMessage()と呼ぶことができます。

public function login(\Illuminate\Http\Request $request){ 
     $user = $request->input('user'); 
     $password = $request->input('password'); 
     $org = $request->input('organisation'); 

     $params = array(
      'user' => $user, 
      'password' => $password, 
      'organisation' => $org 
     ); 
     // login => Set the param array and send to the logon 
     try 
     { 
      $session = new \SoapClient("https://login.twinfield.com/webservices/session.asmx?wsdl", array('trace' => 1)); 
      $result = $session->logon($params); 
      // echo '<pre>';print_r($result); 
      $cluster = $result->cluster; 
      $qq = new domDocument(); 
      $qq->loadXML($session->__getLastResponse()); 
      $sessionID = $qq->getElementsByTagName('SessionID')->item(0)->textContent; 
      //echo $sessionID; 
      $newurl = $cluster . '/webservices/processxml.asmx?wsdl'; 
      try 
      { 
       $client = new \SoapClient($newurl); 
       $data = new \SoapHeader('http://www.twinfield.com/', 'Header', array('SessionID'=> $sessionID)); 
       $jsonResponse = JsonResponse::success($data); 
      } 
      catch (SoapFault $e) 
      { 
       $jsonResponse = empty($e->getMessage()) ? JsonResponse::error(class_basename($e)) : JsonResponse::error($e->getMessage()); 
      } 
     } 
     catch (SoapFault $e) 
     { 
      $jsonResponse = empty($e->getMessage()) ? JsonResponse::error(class_basename($e)) : JsonResponse::error($e->getMessage()); 
     } 
     return $jsonResponse; 
    } 

このコードには、linkもあります。あなたはhttps://github.com/php-twinfield/twinfield経由でそれを統合しますが、あなたはたくさん仕事をしなければなりません。私もそれに取り組んでいます。あなたが必要とするものがあれば教えてください。

+0

これはすごくうまいですし、働いています。私はセッションIDを取得します。どうもありがとう、他のコードがあれば教えてください。 –

+0

Twinfieldがパスワード認証を削除するとすぐにこれは推奨されなくなります。 – Alex

+0

だから@Alex:あなたは新しいoaurhログインや他のコードを教えてくれますか? –

関連する問題