xNet POST请求的C#问题请求多部分表单数据WebKitFormBoundary

时间:2020-05-12 15:09:18

标签: c# post multipartform-data xnet

发布请求xNet多部分表单数据存在问题,当我向站点发送POST请求时,结果是这样的。

        ------------------XuqO7YJ0oOIkJ67P
        Content - Disposition: form - data; name = "login"

        Login
        ------------------XuqO7YJ0oOIkJ67P
        Content - Disposition: form - data; name = "password"

        Password
        ------------------XuqO7YJ0oOIkJ67P
        Content - Disposition: form - data; name = "g-recaptcha-response"

        Key
        ------------------XuqO7YJ0oOIkJ67P--

在网站上,这是类似的POST请求的样子

        ------WebKitFormBoundary77ij9GXAZuqGgd4l
        Content - Disposition: form - data; name = "login"

        Login
        ------WebKitFormBoundary77ij9GXAZuqGgd4l
        Content - Disposition: form - data; name = "password"

        Password
        ------WebKitFormBoundary77ij9GXAZuqGgd4l
        Content - Disposition: form - data; name = "g-recaptcha-response"

        Key
        ------WebKitFormBoundary77ij9GXAZuqGgd4l--

这里唯一的区别是WebKitFormBoundary。 与Content-Type完全一样。 因此,问题在于该站点不想授权我,这会导致错误。因此,由于WebKitFormBoundary一词的差异,我无法理解它的含义。或不。如果是这样,我如何添加这个词WebKitFormBoundary,以使所有内容看起来都与站点相同。我使用xNet。

代码:

        HttpRequest httpRequest = new HttpRequest();
        httpRequest.KeepAlive = true;
        httpRequest.Cookies = new CookieDictionary();
        httpRequest.UserAgent = Http.ChromeUserAgent();
        httpRequest.Referer = "http://test.su/login";
        httpRequest.AddHeader("Accept", "*/*");
        httpRequest.AddHeader("X-Requested-With", "XMLHttpRequest");

        var multipartContent = new MultipartContent()
        {
            {new StringContent(Login), "login"},
            {new StringContent(Password), "password"},
            {new StringContent(token), "g-recaptcha-response"}
        };
        string response = httpRequest.Post("https://test.su/login", multipartContent).ToString();

0 个答案:

没有答案