【发布时间】:2018-01-11 17:02:58
【问题描述】:
我们目前有一个网页,在提交表单时使用 PHP 并在网络服务器上创建一个文本文件。我们希望将此文本文件写入 Azure 文件共享(而不是 blob),以便我们可以从 VM 访问它。我们该怎么做呢,我们已经尝试过使用 HTTPS POST 请求,并且在使用 CORS 时遇到了麻烦,现在我们迷路了。
function sendFile(){
var xhttp = new XMLHttpRequest();
xhttp.open("PUT","https://sofyvhdfiles.file.core.windows.net/sofyvhd/test.txt",false);
xhttp.setRequestHeader("Authentication", "SharedKey myaccount:[Key Here]");
xhttp.setRequestHeader("x-ms-version","2017-04-17");
xhttp.setRequestHeader("x-ms-content-length",102400);
xhttp.setRequestHeader("x-ms-type","text/plain; charset=UTF-8");
xhttp.send();
var response = JSON.parse(xhttp.responseText);
console.log(response);
}
sendFile();
【问题讨论】:
-
可以添加目前尝试过的相关代码吗?
-
我添加了我们一直在使用的函数。我们运行它并得到错误,预检响应没有“Access-Control-Allow-Origin”标头。
-
不确定是否/如何将 CORS 支持添加到 azure 文件共享,但您当然可以通过 PHP 发送请求。如果您使用 Javascript 创建文件,您可以将其发布到您的 PHP 网络服务器并让 PHP 执行 PUT 操作。例如,您可以使用phphttpclient.com
标签: javascript php azure cors