Мой server.js
выглядит так:
var http = require('http');
var server = http.createServer(function (request, response) {
const configs = {
apiBaseUrl: 'http://myUrl'
};
const headers = {
'Content-Type': 'application/json'
};
response.writeHead(200, headers);
response.end(JSON.stringify(configs));
});
var port = process.env.PORT || 1337;
server.listen(port);
console.log("Server running at http://localhost:%d", port);
когда я запускаю это локально, выводится то, что должно:
{"apiBaseUrl":"http://myUrl"}
Но при развертывании в моем экземпляре Azure он ведет себя немного иначе. Также выводится количество символов:
29
{"apiBaseUrl":"http://myUrl"}
0
Любая подсказка, что может вызвать эту проблему?
Изменить:
я забыл упомянуть, что развертываюсь в Azure, и у меня есть web.config
:
<configuration>
<system.webServer>
<rewrite>
<rules>
<clear />
<rule name="Get dynamic configs in server environment" stopProcessing="true">
<match url="configs.json" ignoreCase="true"/>
<action type="Redirect" url="currentConfigs.js" redirectType="Permanent" appendQueryString="true" />
</rule>
</rules>
</rewrite>
<handlers>
<add name="iisnode" path="currentConfigs.js" verb="*" modules="iisnode" />
</handlers>
</system.webServer>
</configuration>