【问题标题】:Angular - Generate HTML file with JS and send to serverAngular - 使用 JS 生成 HTML 文件并发送到服务器
【发布时间】:2014-01-04 05:31:20
【问题描述】:

我的目标是在 javascript 中生成一个 html 文件(基于表单输入),并使用 Angular 的 $http 将这个生成的文件发送到服务器(php)进行存储。这可能吗?

到目前为止,我已经尝试在客户端生成 HTML 字符串并将字符串发送过来,并使用 php 的 file_put_contents() 来生成 html 文件。但我想在客户端生成 html 文件。随着 html 变得越来越复杂,我不想发送长而复杂的字符串。

Javascript(在控制器内部)

$http({
    url: "/test.php",
    method: "POST",
    data: {"content":"<h1>hello world</h1>"}
});

test.php

<?php
    $input = file_get_contents("php://input");
    $data = json_decode($input);
    file_put_contents("index.html", $data->content);
?>

我更喜欢在客户端生成 html 文件,因为我想减少服务器负载。

感谢您的任何建议。

【问题讨论】:

  • 保存 HTML 文件可能不是您应该做的。您通常应该只保存唯一的数据,并仅在需要时使用某种 HTML 模板来生成 HTML。
  • 对基于 php 的 HTML 模板引擎有什么建议吗?
  • 由于您使用 Angular,我将使用 Angular 的内置模板 docs.angularjs.org/guide/templates
  • 你可能想使用一些模板生成库,比如内置的 Anguar 模板或 Handlebars 之类的东西

标签: javascript php angularjs angular-http


【解决方案1】:

您可以将 Twig 用于 PHP 模板。或 PHP 盘子 - http://platesphp.com/

从 PHP 读取 POSTed 数据并使用模板生成。

伪代码:

<?php
    $input = $_POST['content'];
    $html = generateTemplate($input);
    file_put_contents($fileName, $html);
?>

【讨论】:

    猜你喜欢
    • 2015-10-14
    • 1970-01-01
    • 2012-01-05
    • 1970-01-01
    • 2013-09-24
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多