我對 .NET 還很陌生,所以這可能是一個顯而易見的問題,但我已經(jīng)為此苦苦掙扎了幾個小時,這讓我非常沮喪。我正在嘗試創(chuàng)建一個簡單的 GET 請求,它讀取一個 JSON 文件并返回它,如下所示:// GET: api/test[HttpGet]public string Get(){ using (StreamReader reader = new StreamReader("data/test.json", System.Text.Encoding.UTF8)) { string json = reader.ReadToEnd(); return json; }}該test.json文件如下所示:{ "foo": "bar"}并curl http://\[::\]:50001/api/test返回:"{\n \"foo\": \"bar\"\n}"為什么 C# 返回帶有轉(zhuǎn)義字符和引號的字符串?應(yīng)該如何編寫此代碼以使 JSON 響應(yīng)正確格式化?任何幫助表示贊賞,謝謝
1 回答

慕的地8271018
TA貢獻(xiàn)1796條經(jīng)驗 獲得超4個贊
你試過這個嗎?
在 ASP.NET Core 2.0 Web Api 中返回“原始”json
public IActionResult Get()
{
using (StreamReader reader = new StreamReader("data/test.json", System.Text.Encoding.UTF8))
{
string json = reader.ReadToEnd();
return Content(json, "application/json");
}
}
編輯:
正如 Kirk Larkin 所說,你也可以這樣做:
public IActionResult Get()
{
// File(string virtualPath, string contentType)
// data/test.json needs to be in the wwwroot folder
return File("data/test.json", "application/json");
}
- 1 回答
- 0 關(guān)注
- 495 瀏覽
添加回答
舉報
0/150
提交
取消