これに関する StackOverflow の投稿をいくつか読み、コードを何度か修正しましたが、webAPI post メソッドを機能させることができません。post パラメータを取得しようとしていますが、常に null になります。
私がやろうとしているのは、ユーザーがボタンをクリックしたときにjqueryで作成しているキャンバスを表すbase64文字列を受け取ることです:
function MakePhoto(ctrl) {
html2canvas(ctrl, {
onrendered: function (canvas) {
var canvasData = canvas.toDataURL()
jQuery.ajax({
url: "../api/webinfo",
type: "POST",
data: { imagedata: canvasData },
success: function () {
alert("success");
},
error: function () {
alert("failure");
}
});
}
});
}
私WebInfoController.cs
はこのように見えます:
public void Post([FromBody]string imagedata)
{
}
imagedata パラメータは常にNULLになります
そして、これは私がwebapiで受け取っているヘッダーです:
"方法: POST、
RequestUri: 'http://myhost/RestFulApi/api/webinfo'
コンテンツ: System.Net.Http.StreamContent
ユーザーエージェント: Chrome/27.0.1453.94
コンテンツの長さ: 42226
コンテンツタイプ: application/x-www-form-urlencoded; 文字セット=UTF-8}
あなたが私を助けてくれることを願っています。
ありがとう