我正在尝试如下设置 if-match 标头并使用 System.Net.Http 中可用的 HttpClient:
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var adobeRequest = new HttpRequestMessage(HttpMethod.Put, new Uri(url))
{
Content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json")
};
if (!string.IsNullOrEmpty(Etag))
adobeRequest.Headers.Add("If-Match", Etag);
var response = client.SendAsync(adobeRequest);
我在之前的(获取)调用中从 adobe 收到的 Etag 是:
64E8BBA87ACFD0C2C84AF6E1193A3761.5334C3A18AB5A054FF3DBC33AFBDF6C
因此,当我尝试为 Put 请求添加相同的内容时,它给了我以下错误:
值“64E8BBA87ACFD0C2C84AF6E1193A3761.5334C3A18AB5A054FF3DBC33AFBDF6C”的格式无效。
如何解决这个问题?它清楚地表明格式无效,但我相信 Adobe 的 api 正在被数百万人使用。所以不知何故它是我的目标。
Adobe API的链接