Kohana 3.1基于环境的自举引导,并像会话一样存储

| 我们正在Kohana 3.1中构建一个n层样式的应用程序,该应用程序将基于partner_id将JSONP支持的小部件分发给我们的合作伙伴。 每个合作伙伴都需要能够调用一个小部件并指定一个环境参数:使用初始调用来测试OR生产,这将用于选择适当的数据库。 我们需要引导程序来监视$ _REQUEST [\'environment \']变量,然后在合作伙伴每次调用窗口小部件服务时维护该变量的状态。 问题是,应用程序中的所有请求都使用Bootstrap.php,但是许多请求是内部的-即它们不带有partner_id或环境变量。我们尝试使用会话来存储这些会话,但是由于它们是服务器到服务器的GET / POST调用,因此似乎无法在服务器的Cookie中存储和调用会话ID(这是无浏览器的GET)。 有没有人有什么建议?我们意识到可以在内部或外部每次调用时都传递环境变量,但这似乎不是很可靠。 我们有一个配置文件,用于存储伙伴设置(由partner_id索引),例如小部件的宽度和高度,并且我们考虑在此处存储伙伴的环境,但是并非所有对服务器的调用都将由服务器进行。合作伙伴,因此我们仍然需要另一种方式来触发其他调用的环境并选择正确的数据库。 我们还考虑过为合作伙伴存储一个平面文件,以维护最后一个请求的环境,但是同样,由于在最初的请求之后我们有许多内部请求,因此我们并不总是有知识(即我们通常不在乎)在初始调用中使用了哪个partner_id。 希望这有道理...!     
已邀请:
解决方案是从单个控制器中调用“做东西”所需的模型和方法,仅将partner_id保留在控制器中,并在所有“做东西”方法都具备后,将请求的数据发送回去按照MVC模型运行。 即来自合作伙伴的请求->路线->控制器->调用模型等->传递回控制器->将视图返回给合作伙伴 这使得partner_id可以由控制器保留,并且仅传递给需要它进行“处理”的任何模型,并保留在MVC框架内。 如果您不在MVC的范围之内,那么事情显然会变得更加复杂,您需要将变量存储在某个地方。     

要回复问题请先登录注册