仅使用客户端操作保存 XML 文件

Posted

技术标签:

【中文标题】仅使用客户端操作保存 XML 文件【英文标题】:Save XML file with only client-side action 【发布时间】:2014-03-24 15:38:35 【问题描述】:

在工作中,我正在尝试编写一个小型 Web 应用程序来更轻松地修改我们内部使用的现有 XML 文件。 XML 文件存储在我们的网络中,可通过文件系统访问。

保存数据是个问题。现在我知道通过 php 这会很简单,但由于无法获得任何服务器访问权限,因此我仅限于客户端。

据我了解,JS 不会很快获得与 FS 交互的能力。所以我想,将数据打印到新窗口并使用浏览器的 SAVE AS 功能保存 XML 文件可能是最简单的解决方案(这是完全可以接受的)。但是:

因为它仍然是同一个文档,所以每当我保存它时,我都会得到整个源代码,而不仅仅是特定的窗口。

有没有人有任何想法或解决方法?

【问题讨论】:

【参考方案1】:

您可以打开新窗口并将其内容设置为 XML 文件。由于将 XML 内容设置为窗口存在问题,因此您必须使用带有 XML 文件字符串的<textarea/> html 标记作为其内容。这是一个最小的例子:

var wnd = window.open();
wnd.document.open();
wnd.document.write(
    '<textarea>' +
    '<?xml version="1.0" encoding="UTF-8"?>' +
    '<note>' +
        '<to>You</to>' +
        '<from>Me</from>' +
    '</note>' +
    '</textarea>'
);
wnd.document.close();

你可以找到jsFiddlehere

【讨论】:

以上是关于仅使用客户端操作保存 XML 文件的主要内容,如果未能解决你的问题,请参考以下文章

WCF 仅异步操作

C# 模拟 AD 用户

天蓝色推送通知是不是仅适用于从客户端完成的操作?

二十XML

redis(保存邮件激活码)

Git客户端图文详解如何安装配置GitHub操作流程攻略