Javascript 在JS中使用C POST获取数据

Javascript 在JS中使用C POST获取数据,javascript,c#,webpage,Javascript,C#,Webpage,我需要获得以下链接的函数resultado2的结果字符串: 作为第一步,我编写了以下代码: string url = "http://barion.inapi.cl/BuscaBiblio/inicio.php"; Uri uri = new Uri(url); HttpWebRequest request = HttpWebRequest.Create(url) as System.Net.HttpWebRequest;

我需要获得以下链接的函数resultado2的结果字符串:

作为第一步,我编写了以下代码:

            string url = "http://barion.inapi.cl/BuscaBiblio/inicio.php";
            Uri uri = new Uri(url);

            HttpWebRequest request = HttpWebRequest.Create(url) as System.Net.HttpWebRequest;
            request.ContentType = "application/x-www-form-urlencoded";
            request.Method = "POST";
            string buscar = "solicitud=" + 750 + "&registro=&descripcion=&solicitante=&d=1&m=1&y=" + 2003 + "&d2=31&m2=12&y2=" + 2003; // +"&nocache=0.1821407969109714";
            byte[] data = Encoding.UTF8.GetBytes(buscar);
            request.ContentLength = data.Length;

            using (var stream = request.GetRequestStream())
            {
                stream.Write(data, 0, data.Length);
            }

            WebResponse response = request.GetResponse();
            string responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
在这里之前,一切都很好。”responseString'给了我'ok1',这表明到目前为止只有一个结果

但是,我被困在函数resultado2返回字符串的地方,该字符串返回包含所需表的HTML代码。 我尝试使用以下代码:

            url = "http://barion.inapi.cl/BuscaBiblio/listado.php";

            uri = new Uri(url);
            request = HttpWebRequest.Create(url) as System.Net.HttpWebRequest;
            request.ContentType = "application/x-www-form-urlencoded";
            request.Method = "POST";
            postData = "st=0&total=1";

            data = Encoding.UTF8.GetBytes(postData);
            request.ContentLength = data.Length;

            using (var stream = request.GetRequestStream())
            {
                stream.Write(data, 0, data.Length);
            }

            response = request.GetResponse();
            responseString = new StreamReade
但它给了我一个500的误差。 然而,在尝试Chrome的调试模式时,我显然可以检查'r'的值

function resultado2() {
    if(peticion_http.readyState == READY_STATE_COMPLETE) {
        if(peticion_http.status == 200) {
            mm = document.getElementById("resultado");
            var r = peticion_http.responseText;
            mm.innerHTML = r;
        }
    }
}
有什么想法吗?。
提前感谢。

为了澄清,您是否正在尝试将数据从客户端提交到服务器端?如果是这样,你的方法就有点奇怪了。您可以简单地执行以下操作:

function Calculate() {
     var order = new Array();
     var convertedOrder;

     // Do whatever you need or want to validate.

     // BuildOrder a function to build our object cleanly.
     order.push(BuildOrder(product, quantity, price, shipping, other, location, tax)); 

     // Convert object to Json
     convertedOrder = JSON.stringify(order);

    // The array and converting data into JSON would be wrapped in a loop.

   $.ajax({
         url: '<%= Page.ResolveUrl("~/Services/Order.aspx") %>',
         data: { Order: convertedOrder },
         type: 'POST',

         success: function (order) {
              var result = JSON.parse(order);
              console.log(result[0].Total); // Returned data
         }
}
然后在.aspx的代码隐藏中,在页面加载中执行以下操作:

这将把数据从客户机推送到服务器,然后从服务器推回到客户机,这样您就可以使用数据了。甚至可以在新功能和其他领域调用它


希望这能有所帮助。

在重新检查js查询时,我发现我需要在异步发出请求时,在我的C代码中实现“.onreadystatechange”事件。
// Data to be read and parsed.
public class Returnable
{
    public int Product { get; set; }
    public int Quantity { get; set; }
    public decimal Price { get; set; }        
    public decimal Shipping { get; set; }
    public decimal Other { get; set; }
    public string Location { get; set; }
    public decimal Tax { get; set; }
}

// Data to Send Back:
public class SendInformation
{
     public string Tax { get; set; }
}
 JavaScriptSerializer serializer = new JavaScriptSerializer();
 List<Returnable> deserialize = serializer.Deserialize<List<Returnable>>(order);
 foreach(Returnable returnable in deserialize)
 {
     // Iterate through all of your passed data.
 }

 List<SendInformation> responseObject = new List<SendInformation>();
 responseObject.Add(new SendInformation() { Total = "value", Tax = "value" });
 string response = serializer.Serialize(responseObject);
 Response.Write(response);
 Response.End();