c# - 如何使用 ajax 发送一个非常大的字符串?
问题描述
我正在尝试使用 ajax 发送一个相当大的字符串(大约 300 万个半字符)。该代码适用于小字符串,但如果我尝试使用我需要传递的字符串,它将无法正常工作。我使用的字符串是一个编码的 base64 Excel 文件。
这是我用来发送字符串的代码:
$.ajax({
url: "", //The page I call
type: "GET",
data: { base64: "....."},//here goes the string I need to pass
dataType: 'text',
success: function (response) {
alert("successful");
},
error: function () {
alert("error");
}
});
此代码适用于较小的字符串,但不适用于我的。同样,我要传递的字符串大约是 300 万个半字符,甚至可能更大。
后端代码如下:
[HttpGet("Test")]
public async Task<string> testHelloWorld(string saluto)
{
try
{
string testString = "Funziona";
Console.Write(testString + ": " + saluto + "\n");
return testString;
}
catch (Exception ex)
{
Log.Error("API(Test) - Exception", ex);
return null;
}
}
有没有办法发送这个字符串?
解决方案
使用POST
而不是GET
因为通常在 Web 服务器上配置的查询字符串的长度有限制。
推荐阅读
- azure - 如何在 Azure 应用服务计划指标(特别是 SocketOutboundAll)的聚合中计算平均值?
- reactjs - Jest 和 Sinon.JS 可以测试来自服务器的增量 getData(在 React 和 Redux 的情况下)吗?
- c# - 没有数据插入数据库
- struct - Solidity,Solc 错误:无法构造包含(嵌套)映射的结构
- reactjs - AWS Amplify 避免对 @key 或索引查询生成列表的 @connection 查询
- azure-web-app-service - “基础应用服务部署不支持 PremiumV2”是什么意思?
- jetbrains-ide - JetBrains Rider 中的“此分析配置不适用于选定的运行配置”是什么意思?如何解决?
- listview - 长按突出显示列表视图行
- swift - 如何将另一个字典条目添加到现有字典以形成新字典(即不追加)
- javascript - 水平和垂直之间的不同换行文本