是否存在 returns 来自 POST 字符串的文件的 Web 服务

Does a Web Service exist that returns a file from POST string

我正在创建一项服务,该服务根据一组 waypoints 生成行车路线。完成后,我需要输出一个 GPX 文件(基本上是一个 XML 格式的文件,具有特定于 GPS 数据的架构)。

我所有的代码都在 JS 中,所以输出文件并不简单,我知道我可以在 PHP 中写一些东西,但这对我来说有点复杂。

我的问题是,是否有现有的 Web 服务,我可以简单地 POST 将 XML 数据作为字符串并将其 return 文件?

非常感谢,

斯图

您可以将字符串转换为 blob,然后使用数据 URL 到 "create" 文件并下载它:

var data = "<test>test</test>";
var blob = new Blob([data], {type : 'text/xml'});

var a = document.createElement('a');
a.download = 'test.xml';
a.href = URL.createObjectURL(blob);

a.dispatchEvent(new MouseEvent('click', {
  view: window,
  bubbles: true,
  cancelable: true
}));

它有点老套,但它确实有效。