【发布时间】:2021-01-08 19:12:31
【问题描述】:
使用最新版本的 VS 2019 Community 和 SDK 5.0.101
我创建了一个 Editform,我可以在按钮提交操作中看到模型的所有属性都有有效值。
我将 onvalidsubmit 事件的操作方法创建为异步任务在此方法中,我执行了一些自定义检查(并在发现任何错误时返回到表单)。
一旦没有错误,我必须向外部站点(就像一个黑匣子)发送请求,我对它所期望的和应该返回的内容有一点了解。此 url 作为表单打开,因此我尝试使用获取响应所需的所有参数创建消息(即在表单上填写的所有条目),通过提交按钮检索表单上的。
我一直在寻找一个很好的例子,但找不到一个可以回答我的操作问题的例子。
以下是我目前创建的步骤: var client = _clientFactory.CreateClient();
我不确定是否必须为 client.DefaultRequestHeaders.Content 添加一些值
另外,我是否需要序列化参数(json)或者我可以在调用中输入值作为 var request = new HttpRequestMessage(HttpMethod.Get,""https://theuUrlIwanttoget.com"
.com 后面需要问号吗?
我可以输入模拟 json 的命名参数,即(顺便说一句,不确定它们是命名的还是位置的,所以我保持在某些文档中看到的顺序) "{nameparameter1 : value, nameparameter2 : value, etc...}");
应该将值作为字符串“值”传递吗?不知道网站的内部工作,所以我打算实验并检查返回码
使用 PHP 之类的另一种技术,我知道您可以将“command = submit”嵌入到参数中,它会触发 URL 表单上的提交按钮。有没有办法通过 HTTPrequestmessage 来实现这一点?
接下来客户端必须等待 client.PutAsync(... 我必须读取响应。
如果有人可以指导我查看将教我如何使用参数调用站点以便我可以继续进行的文档,我将非常感激。
【问题讨论】:
-
“黑匣子”到底是什么意思?这项服务有任何文件吗?它是一个 API - 期待数据 - 还是另一个期待“表单提交”的 Web 应用程序 (HTML)?是 POST、PUT 还是其他?那么反应呢?根据黑盒的预期参数,
HttpClient有合适的方法。 -
无 API,它是一个 Web 应用程序,希望用户填写表单并点击提交按钮,然后显示结果表。我想以编程方式执行此操作。这是一个 GET 请求。在我有疑问是否必须序列化 8 个或 9 个参数之前没有这样做,如果它们必须是所有字符串等。
标签: blazor blazor-server-side http-request-parameters