php – 哪种模式以及如何构建此[不同的serviceHandlers,结构和验证]?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 哪种模式以及如何构建此[不同的serviceHandlers,结构和验证]?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_502_6@ 好吧所以我试图弄清楚所有这些模式.

好吧,所以我在CodeignITer中编写了一个应用程序,它需要能够使用SOAP,可能是XML,逗号分隔等将有关汽车和客户的数据发送给不同类型的公司.

但他们都需要同样的东西.

我想让它尽可能动态,并确保编写测试很容易.

所以服务应该采取以下几点:

>一个处理程序
>申请人[1-2]
> params
>对象

开始创建不同的类

Gr8Exp
NordCar
SwePErf

每个实现接口iServiceRequest

interface iServiceRequest{
    /**
     * Send the request to the company server.
     */
    function sendRequest();
    /**
     * Saves the response into the database.
     */
    function saveResponse();
    /**
     * PRepares the request to the company,setting info From form and shit.
     */
    function prepareRequest();
    /**
     * Soap,XML,CSV,JSON
     * @param type $method
     */
    function setRequestHandler(iServiceRequestHandler $handler);
}

然后他们需要构建Soap,JSON请求,具体取决于我输入的处理程序.

在需要验证的人(不是所有人)之后我使用了:

interface iAdaptServiceRequest{
    /**
     * Structure the array information and put it into an object structure in the right place.
    */
    function structure(array $info);
    /**
     * Make all the checks for the function
     */
    function validateInfo();
}

但是我被卡住了,当我刚刚使用SOAP请求时它工作得非常好;但现在.由于我需要以不同的方式对它们进行格式化,因此对每种类型的请求或公司使用不同的处理程序,我不知道该怎么做.
我可以把它们放在不同的文件夹中,并在不同的文件夹中重新创建该类.但这并不是一个好习惯,因为我正在复制代码.

最后我想运行这样的链接

$result = $m-> prepareRequest() – > sendRequest() – > saveResponse();

有什么建议??

解决方法

恕我直言:

– 创建/使用前端控制器.

– 前端控制器确定使用哪个请求处理程序(JSON,SOAP,XML等).

– 请求处理程序生成一个公共“请求”对象,该对象在所有接口中的行为相同,基本上将变量放入“请求对象”内的常见命名格式

– 它确定将请求发送到哪个服务并在那里发送请求对象

– 服务处理请求对象并生成响应对象

– 控制器创建一个适当的(JSON / SOAP / XML)View对象,将响应对象处理为正确的视图类型,View将响应输出为该类型.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 哪种模式以及如何构建此[不同的serviceHandlers,结构和验证]?全部内容,希望文章能够帮你解决php – 哪种模式以及如何构建此[不同的serviceHandlers,结构和验证]?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。