首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >双现场API与laravel的集成

双现场API与laravel的集成
EN

Stack Overflow用户
提问于 2017-11-24 10:16:43
回答 1查看 1K关注 0票数 0

Twinfield是一个面向中小型企业的在线财务会计软件包,由设在荷兰的Twinfield国际公司生产和维护。有20多个国家的15 000多个用户使用它。

我想集成它的API。我已经安装了laravel并创建了一些基本的API,但是它非常庞大。集成示例如何以及在何处链接?请帮帮我。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-21 12:57:38

这不是完整的代码,而是提供了双字段的登录。我也被困住了,因为很多库都是为双字段提供的,但没有给出任何示例代码。没有提供PHP集成的文档。我对孪生球场非常失望。即使您有测试帐户,它也会禁用,而不是永久禁用。在这里,jsonresponse是自定义的,所以如果您有任何与错误相关的错误,您只能调用$e->getMessage()

代码语言:javascript
复制
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;
    }

在这个链接中也给出了一些代码。您将通过https://github.com/php-twinfield/twinfield集成它,但是您必须做大量的工作。我也在努力,如果你需要什么,请告诉我。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47471023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档