C# 如何在C上使用参数调用JavaScript函数#

C# 如何在C上使用参数调用JavaScript函数#,c#,javascript,httpwebrequest,C#,Javascript,Httpwebrequest,我想用HttpWebRequest或C#中的WebRequest调用JavaScript函数。我不想使用我可以调用invokemember的webbrowser 这是我的密码: public void MyWebRequest(string url, string method, string data) { request = WebRequest.Create(url); if (method.Equals("GET") || method.Equals

我想用HttpWebRequest或C#中的WebRequest调用JavaScript函数。我不想使用我可以调用invokemember的webbrowser

这是我的密码:

public void MyWebRequest(string url, string method, string data)
{  

       request = WebRequest.Create(url);

        if (method.Equals("GET") || method.Equals("POST"))
        {
            // Set the Method property of the request to POST.
            request.Method = method;
        }
        else
        {
            throw new Exception("Invalid Method Type");
        }
       string postData = data;

        byte[] byteArray = Encoding.UTF8.GetBytes(postData);

        request.ContentType = "application/x-www-form-urlencoded";

        request.ContentLength = byteArray.Length;

        dataStream = request.GetRequestStream();

        dataStream.Write(byteArray, 0, byteArray.Length);

        dataStream.Close();
}
try
是一个JS函数,它有两个int参数。我想调用onclick方法,但是如何将参数传递给函数呢

onclick="try(1,3);"

所以这不是一个开放的问题

WebRequest
本质上是一个“美化”的套接字库,用于建立与web服务器的连接。它只不过是在客户端(使用
WebRequest
的应用程序)和承载站点的服务器之间传输数据的一种方式

出于同样的原因,如果查看
数据流
(参考您的代码),您只会看到HTML标记,而不会看到实际的布局元素、颜色、样式等,javasript也不会工作。HTML需要一个呈现代理,JavaScript需要一个引擎


因此,如果您需要使用页面上包含的JavaScript,
WebBrowser
是您最好的选择。它将加载运行页面上找到的任何JavaScript所需的任何库/插件。它可能会慢一些,是的,但那是因为它给你的不仅仅是传输数据(它还呈现HTML,执行任何初始化脚本,并绑定到页面定义为美观所必需的任何元素。)

所以这不是一个开放式的问题

WebRequest
本质上是一个“美化”的套接字库,用于建立与web服务器的连接。它只不过是在客户端(使用
WebRequest
的应用程序)和承载站点的服务器之间传输数据的一种方式

出于同样的原因,如果查看
数据流
(参考您的代码),您只会看到HTML标记,而不会看到实际的布局元素、颜色、样式等,javasript也不会工作。HTML需要一个呈现代理,JavaScript需要一个引擎


因此,如果您需要使用页面上包含的JavaScript,
WebBrowser
是您最好的选择。它将加载运行页面上找到的任何JavaScript所需的任何库/插件。它可能会慢一些,是的,但这是因为它给你的不仅仅是传输数据(它还呈现HTML,执行任何初始化脚本,并绑定到页面定义为美观所必需的任何元素。)

抱歉,我编辑了我的代码!!我忘了添加一些代码。。现在,javascript函数驻留在您使用
WebRequest
获取的页面上,您正在对服务器执行HTTP POST请求。碰巧您在请求中传递了一些JavaScript。您现在是否希望服务器“执行”该代码?如果没有,那么您将收到一个响应,这取决于服务器。如果服务器碰巧用相同的JavaScript代码响应,您是否希望响应会“执行”代码?只是想理解这个问题…@HarunAbi:如果你需要网站的功能,是的,
WebBrowser
可能是最好的方式。而且它只是“慢”,因为它必须加载所有插件,如JVM、JS引擎和页面需要的任何其他功能。真的谢谢你,Brad,它太清晰了。。好的,我将使用网络浏览器……)对不起,我编辑了我的代码!!我忘了添加一些代码。。现在,javascript函数驻留在您使用
WebRequest
获取的页面上,您正在对服务器执行HTTP POST请求。碰巧您在请求中传递了一些JavaScript。您现在是否希望服务器“执行”该代码?如果没有,那么您将收到一个响应,这取决于服务器。如果服务器碰巧用相同的JavaScript代码响应,您是否希望响应会“执行”代码?只是想理解这个问题…@HarunAbi:如果你需要网站的功能,是的,
WebBrowser
可能是最好的方式。而且它只是“慢”,因为它必须加载所有插件,如JVM、JS引擎和页面需要的任何其他功能。真的谢谢你,Brad,它太清晰了。。好的,我将使用网络浏览器……)@哈鲁纳比:很高兴我能帮上忙@哈鲁纳比:很高兴我能帮上忙
onclick="try(1,3);"