gpt4 book ai didi

servicestack - 如何配置客户端以使用 authsecret 访问?

转载 作者:行者123 更新时间:2023-12-02 02:42:45 25 4
gpt4 key购买 nike

我正在使用客户端,我需要使用 authsecret 参数调用服务。如果我将此参数添加到基本 url,它会给我一个序列化错误。

String baseUrl = AppConfig.GetAppApiUrl();
var client = new JsonServiceClient(baseUrl.AddQueryParam("authsecret","secretz123!"));
var c = client.Send(new ComuneRequest { Id = "A001" });

使用Fiddler我发现客户端生成的请求是不正确的:

POST http://192.168.0.63:820/?authsecret=secretz123%21/json/reply/ComuneRequest

那么,我必须做些什么才能让客户端以正确的格式创建请求?

最佳答案

它需要作为请求参数(即 QueryString 或 FormData)发送,您可以使用 HTTP Utils与:

var url = baseUrl.CombineWith(requestDto.ToUrl()).AddQueryParam("authsecret", secret);
var res = url.GetJsonFromUrl().FromJson<MyResponse>();

否则,由于 AuthSecret 不是您请求 DTO 的属性,您将无法将其作为请求正文中的请求参数发送,但您应该能够在请求 header 中发送该参数与:

var client = new JsonServiceClient(baseUrl) {
RequestFilter = req => req.Headers[HttpHeaders.XParamOverridePrefix+"authsecret"] = secret
};

关于servicestack - 如何配置客户端以使用 authsecret 访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58135852/

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