簡體   English   中英

使用node.js的Azure Web Jobs輸出文件的URI

[英]URI of Azure Web Jobs output file with node.js

今天,我開始使用運行node.js腳本的Azure Web作業,該腳本在同一目錄中輸出json文件。 我現在想使用http來使用該文件,但是我不知道正確的uri是什么。 我認為它必須類似於日志所在的位置(順便說一句,告訴我作業已成功運行),但是我似乎找不到json文件。 不應該是這樣嗎? https://SiteName.scm.azurewebsites.net/JobName/output.json

編輯:我剛剛使用Webmatrix打開了站點,盡管我可以找到作業文件(在/ App_Data / jobs / triggered / JobName下),但似乎日志中並未保存json文件。 有人知道您是否可以像這樣在網絡作業中保存文件嗎?

fs.writeFile(outputFilename, JSON.stringify(output, null, 4), function(err) {
    if(err) {
        console.log(err);
    } else {
        console.log("JSON saved to " + outputFilename);
    }
});  

順便說一句。 如果要使用Azure服務器靜態JSON,則必須編輯Web.config: http : //blogs.msdn.com/b/africaapps/archive/2013/06/07/how-to-serve-static-json-文件從-一個窗口,蔚website.aspx

該文件不在WebJob二進制文件旁邊的原因是,在調用WebJob之前,該文件首先被復制到一個臨時目錄( %temp%\\jobs\\triggered\\jobName\\randomName )並從那里運行,這樣就沒有文件了鎖定,您可以隨時更新WebJob的二進制文件。

當使用WebJob持久保存文件時,使用的適當路徑是使用WEBROOT_PATH環境變量,因為它具有您的wwwroot的路徑。

如果您只想私下訪問此文件(因為wwwroot是公共可見的),則可以上一層,例如: %WEBROOT_PATH%/../output.json

另一個選擇是使用: d:\\home ,對於上下文wwwroot,位於: d:\\home\\site\\wwwroot

要訪問該文件,請使用以下URL: https : //SiteName.scm.azurewebsites.net/vfs/site/output.json ,您需要提供部署憑據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM