我目前正在研究一个系统,该系统需要能够使用一个表单将消费者重定向到c#应用程序,该表单将数据作为序列化的JSON字符串与消费者一起发布。
因此,表单看起来像这样,基本上是: -
<form action="c#methodLocation" method="post">
<input type="text" value="<?php echo $safeFormatJson; ?>">
<input type="submit" value="submit">
</form>
我认为需要一个enctype,但是我尝试了“application / json”,但数据被解释为UrlEncoded。文本/纯文本是否可行,或者甚至可以严格地将序列化字符串作为POST发送?
我尝试使用Jquery和AJAX以不同的方式发送数据,但是当消费者到达c#端时,该方法会产生重写数据的问题,因为这样做会无意中创建新会话。 / p>
答案 0 :(得分:0)
我所知道的唯一解决方案是捕获onsubmit事件然后发送你喜欢的任何手工制作的请求
这里是类似jQuery的伪代码(它可以是prototype.js,angular.js或纯JS8)
(
var form = $("#myform"); //find needed element in DOM
var mySecretEncription = function(){.../*hard to understand secret*/}; //define your specials
var myPost = function(){ //provide functionality to send valid request
var myData = {};
myData.superField = mySecretEncription(form.select("input.myfield").value);
$.http({
url : "special-post-url or form.action attribute",
method:"POST",
headers:{... my special header ...},
data :myData
})
}
form.on("submit", mypost); //event subscription
)()
这不是要复制的代码,而是接受