作者Federer5566 (费德勒5566)
看板C_Sharp
标题[问题] https post无法把值post出去
时间Thu Jul 25 12:04:48 2019
原本使用的网页jquery如下,可以把msg=$("#content").val() 给POST到远端API
$("button").click(function(){
$.post("API网址",{msg:$("#content").val(),},
function(e){
console.log(e);
});
});
想要改写成C#之後多些弹性
但POST出去的内容,API一直回应说抓不到msg的值
string param = "msg=我要传的讯息";
byte[] bs = Encoding.UTF8.GetBytes(param);
HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("API网址");
req.Method = "POST";
req.ContentType = "application/json";
req.ContentLength = bs.Length;
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(bs, 0, bs.Length);
}
不晓得哪边出了问题,搞了两天还搞不定
原本想说折衷一下乾脆改用shellwindows去控制网页传值
但好死不死这网页只能在chrome和edge运作,换成IE就一样post不到
偏偏VS又只支援IE的control,快疯了...-.-
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 111.249.76.232 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_Sharp/M.1564027492.A.705.html
1F:推 Litfal: 建议改用HttpClient, 还有.net也有chrome核心的webkit能用 07/25 12:43
2F:推 satanbaby: 要看wireshark 我才是你msg没有JSON.stringify 07/26 08:30
3F:推 Litfal: 对啊你ContentType和实际送的不同啊,你的格式是formdata 07/26 10:16
4F:→ Litfal: ContentType要改成application/x-www-form-urlencoded吧 07/26 10:17
5F:→ mepowerlmay: 有https的网页吗 07/29 00:51
6F:→ mepowerlmay: 连接可以参考?我帮你测看看 07/29 00:51
7F:推 vi000246: 应该不是json而是form喔 你要开F12看看 08/01 23:00
8F:→ Federer5566: 感谢上面各位,ContentType的确不是json,修正後就 08/07 20:17
9F:→ Federer5566: ok了 08/07 20:17