gpt4 book ai didi

C#/Winform : Enter data into HTML page, 提交表单

转载 作者:可可西里 更新时间:2023-11-01 16:35:32 27 4
gpt4 key购买 nike

我有一个带有 BackgroundWorker 的 Winform。除其他外,BackgroundWorker 必须对页面进行 HTTP 调用、填写一些数据、提交表单,并检索“单击”提交按钮后返回的 HTML。我在执行此操作时遇到了许多障碍:

  1. 无法发布数据,因为目标网络服务器不 405 支持该方法。
  2. 不能再次使用 WebClient.UploadValues,因为网络服务器不支持 POST。
  3. 不能使用 WebBrowser 控件,因为 BackgroundWorkers 在 COM Interop 上很烂,并且抛出一个异常,表明它必须在 STA 线程(单线程单元)中
  4. 不能运行另一个单独的线程,因为 BW 必须坐下来等待结果才能继续(不能,或者至少我不知道这样做不会崩溃的方法)
  5. 无法更改线程的 ApartmentState,因为它是一个 BackgroundWorker,如果被告知进入 STA 模式,它就会抛出

我应该怎么做才能解决这个问题?

[编辑]:应用程序入口点已标记有 [STAThread] 属性。

最佳答案

您是否尝试过使用 WebClient.UploadValues将 Method 参数设置为“GET”?

关于C#/Winform : Enter data into HTML page, 提交表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/350649/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com