asp.net - 我是否需要清理 ASP.NET API 端点上的用户字符串输入?如果有怎么办?
问题描述
我为我的网站编写了一项将英语转换为 Pig Latin 的服务。这是一个 API 端点,它获取一个发布到它的字符串。
我担心因为用户可以发送任何东西,所以不安全的代码可能会以某种方式发送并在服务器上运行。
在这些情况下,我是否需要清理输入?
//Here is the API Action.
[HttpPost]
[ResponseType(typeof(string))]
[Route("api/plconverter")]
public IHttpActionResult TranslateIntoPigLatin([FromBody]string english)
{
string piglatin = convert_to_pig_latin(english);
return Ok(piglatin);
}
//Here is the AJAX call that gets made.
$.ajax({
url: "/api/plconverter",
type: "POST",
data: JSON.stringify(($(this).val().trim())),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$("#pig_latin_output").html(data);
}
});
解决方案
推荐阅读
- r - R tableGrob 热图或列中的条件格式
- c# - 图像处理循环中的内存异常(需要比 GC.collect 更好的解决方案)
- excel-formula - 返回 0 而不是 #N/A
- c++ - 无法将子类转换为父类
- c++ - 防止用户离开 std::experimental::filesystem 中的目录
- java - 如何从java中的文本文件中提取具有列约束的行数据
- c# - 如何将外键保存到多个表 asp.net mvc 实体
- react-native - 使用 react-native 构建安卓 apk
- maps - Bing Maps Tile Source Uri 构造函数设置自定义标头
- java - 无需长按即可在 recyclerView 中重新排序项目