У меня довольно длинный код для загрузки в imgur, попытался проверить его, получил некоторые ошибки, исправил их. (Также при помощи этого сайта ОФК.) Но теперь я получаю сообщение об ошибке 400.Ошибка Imgur 400 Client.uploadString
Это часть кода, а также, где это происходит
public static ImgurToken GetToken(string clientId, string clientSecret, string pin)
{
string Url = "https://api.imgur.com/oauth2/token/";
string DataTemplate = "client_id={0}&client_secret={1}&grant_type=pin&pin={2}";
string Data = String.Format(DataTemplate, clientId, clientSecret, pin);
using (WebClient Client = new WebClient())
{
string ApiResponse = Client.UploadString(Url, Data); //Error 400
var Deserializer = new JavaScriptSerializer();
var Response = Deserializer.DeserializeObject(ApiResponse) as Dictionary<string, object>;
return new ImgurToken()
{
AccessToken = Convert.ToString(Response["access_token"]),
RefreshToken = Convert.ToString(Response["refresh_token"])
};
}
}
Я думаю, что я сделал DATA и Правильно? Он также указывает его там на веб-сайте API Imgur.
EDIT: Только что заметил, моя булавка пуста. Это правильно?
EDIT 2: Я проверил немного, мой ClientSecret отображается с красным текстом, но я уверен, что это правильно.
GetPin:
public static string GetPin(string clientId, string clientSecret)
{
string Pin = String.Empty;
string OAuthUrlTemplate = "https://api.imgur.com/oauth2/authorize?client_id={0}&response_type={1}&state={2}";
string RequestUrl = String.Format(OAuthUrlTemplate, clientId, "pin", "blah");
return Pin;
}
Что такое? вместо /. Он ничего не делает, что я вижу. Кроме того, я добавил класс GetKey, так как вы можете видеть, что у него есть String Pin, который пуст. Можете ли вы что-нибудь сделать с этим? – Stepepper
@Stepepper ах, теперь я понимаю, я обновил свой ответ –
Где я могу поместить HttpUtility? – Stepepper