【问题标题】:Laravel: Offline Mode?Laravel:离线模式?
【发布时间】:2015-03-06 23:02:15
【问题描述】:

我想让我的网络应用(使用 laravel 构建)离线工作...但我不知道该怎么做!

我正在对静态文件使用“应用程序缓存”,但我不确定如何处理应用程序的动态方面。

该应用程序使用我猜我需要使用 localStorage 的数据库? (从我目前在网上阅读的内容)

我基本上只是想找人为我指明正确的方向,因为我在网上很难找到很多关于设置 Laravel 以供离线使用的内容

谢谢, 戴夫

【问题讨论】:

  • 你不能。 Laravel 是用 PHP 编写的,这是一种服务器端语言。没有服务器,没有应用程序。如果你想让你的应用离线工作,你需要研究一种客户端语言,比如 JavaScript。
  • “离线”是什么意思?没有互联网接入?只需在 localhost 服务器上安装所有内容,例如 XAMP - 您不必插入 :)
  • 我认为你需要澄清你的问题,大卫。你的意思是你想在本地开发一个 Laravel 应用,还是你想让你的应用在他们的设备上为用户离线工作?
  • 一个有效的问题@David (+1) 你是如何实施解决方案的。在生产中使用后客户的实际反馈是什么......?我必须建立这样的系统,并且需要知道解决方案在现实生活中是否有效......
  • 嘿@hhsadiq,我们决定使用Meteor - 太棒了!使用Appcache Package(将资产存储在应用程序缓存中)和ground:db Package(将数据库存储在本地存储中)我们能够离线使用我们的应用程序。我们目前正在使用它来构建一个使用 Cordova Phonegap 集成的 iOS 和 Android 应用程序。

标签: php laravel local-storage offline offline-caching


【解决方案1】:

您只能使用 appcache 使静态站点脱机。你不能用 laravel 做到这一点。

如果您想将数据移动到本地存储并拥有一个半动态的网站,您必须彻底改变您的架构。让我概述一种可能的方法:

一个用 javascript 编写的单页 ​​web 应用程序(使用像 ExtJs 这样的框架),它以 web 服务的形式连接到后端,可以访问数据库(你可以使用 laravel 编写它)。

当您连接到服务器时,您可以将数据加载到本地存储中。当您离线时,您可以继续使用数据。当客户端重新连接时,您必须将更改与服务器同步。

编辑:自 2020 年起,应用程序存储已弃用。改为查看 ServiceWorkers。

【讨论】:

  • 谢谢@Lorez Meyer!会调查这个!感谢您给我一个解决方案,而不仅仅是告诉我“你不能”并标记我......非常感谢! :)
  • @LorenzMeyer 我知道这是一个老问题,但是如果你使用 ajax 和 laravel 怎么办,所以在每次向服务器发出请求时,你都会“在更新或添加新记录的情况下”我们将检查如果连接断开,我们将使用 html5 localStorage 并通知用户一旦连接恢复,此数据将发布到服务器,不能这样做吗?
  • @ctf0 我认为您的建议可行。尽管我担心实施会很繁重。
  • @LorenzMeyer 你能详细说明一下吗,对于离线检查我打算使用krawczyk.io/heyoffline.js
  • 真的,对此我无法给出建议。我的回答已经反映了我可以对这个问题说些什么。我对 Laravel 了解不多。顺便说一句,我认为后端不相关。
猜你喜欢
  • 1970-01-01
  • 2020-10-15
  • 1970-01-01
  • 2013-06-05
  • 2017-07-06
  • 1970-01-01
  • 1970-01-01
  • 2011-08-05
  • 2013-08-03
相关资源
最近更新 更多