我已经在Azure中部署了一个网站,我想从c#桌面应用程序访问programaticaly这条路径:“D:\ home \ site \ app”并删除所有文件并以编程方式上传新文件。
我搜索并找到了很多方法,但所有方法都是针对AzureStorage
或使用Kudu consol
或FTP
,而我真正想要的是访问本地存储网站以编程方式部署,并制作一些以编程方式编辑文件。
答案 0 :(得分:3)
当然,站点控制管理器(Kudu)有一个API,即VFS API: https://github.com/projectkudu/kudu/wiki/REST-API#vfs
您可以使用其中任何一种进行身份验证:
Bearer
令牌(ARMClient中的参考实现)
示例用法(使用站点级凭据):
# Line breaks brutally used to improve readability
# /api/vfs/ is d:\home
# Append path as necessary, i.e. /api/vfs/site/app
$ curl -k https://$are-we-eating-too-much-garlic-as-a-people:6sujXXX
XXXXXXq7Zc@are-we-eating-too-much-garlic-as-a-people.scm.azurewebsites.net
/api/vfs/site/wwwroot/ill-grab-this-file-over-vfs-api.txt
There, i did it.
我在这里假设你想要做外界的所有事情 - 因为你没有明确说明。
答案 1 :(得分:1)
嗯,在我的天蓝色代码中。我的任务是保存一个excel文件并将其内容上传到SQL服务器。 我使用这个简单易用的访问主页。
string fileToSave = string.Format("{0}\\{1}", HostingEnvironment.MapPath(@"~\Temp"), FileUpload.FileName);
if (!Directory.Exists(HostingEnvironment.MapPath(@"~\Temp")))
Directory.CreateDirectory(HostingEnvironment.MapPath(@"~\Temp"));
FileUpload.PostedFile.SaveAs(fileToSave);
您可以使用类似的东西删除并保存新文件或其他I / O操作。