我正在尝试使用RestSharp生成正确的参数,但不知何故,在发出请求时,我总是得到内部服务器错误(500)或不可接受(406)。我已成功使用Google Chrome扩展程序邮递员发出请求,但仅限于使用Raw JSON格式时。所以我正在寻找一种方法来转换这个原始的JSON格式,以便将它与C#中的RestSharp服务一起使用。这是原始的JSON。
{
"cliTemplateCommand" : {
"targetDevices" : {
"targetDevice" : {
"targetDeviceID" : "123",
"variableValues" : {
"variableValue" : {
"name" : "Interface",
"value" : "GigabitEthernet101/1/0/22"
}
}
}
},
"templateName" : "StudentConfig"
}
}
有没有人可以帮我转换,所以我可以使用RestSharp将其提供给请求。以下是我用来尝试完成此操作的代码段:
request.RequestFormat = DataFormat.Json;
request.AddHeader("Authorization", "Basic " + encodedPass);
request.AddHeader("Content-Type", "application/json");
string json =
"{‘cliTemplateCommand’ : { ‘targetDevices’ : ‘targetDevice’ : " +
"{ ‘targetDeviceID’ : ‘123’, ‘variableValues’ : { ‘variableValue’ : ‘name’ : ‘Interface’, ‘value’ " +
": ‘GigabitEthernet101/1/0/22’ } } } }, ‘templateName’ : ‘StudentConfig’ }}";
request.AddParameter("application/json", json, ParameterType.RequestBody);
IRestResponse response = restClient.Execute(request);