Nereqla
Megapat
- Katılım
- 21 Ağustos 2017
- Mesajlar
- 319
- Çözümler
- 6
HttpClient üzerinden post isteği gönderdiğimde geriye 403 forbidden alıyorum. Diyebilirsiniz sorguda vs bir hata vardır veya api problemdir ancak bunda sorun yok çünkü aynı sorguyu Insomnia (postman benzeri bir sorgulama uygulaması) uygulaması üzerinden yaptığımda 200 kodu ile istediğim geri dönüşü API'dan alabiliyorum.
Koddaki karşılığını ise şöyle yazdım;
Sonuç
Nerede hata yapıyorum bir türlü çözemedim.
Güncelleme:
Sorunu çözmüş bulunmaktayım. Nasıl çözdüğümü soracak olursanız da birden bire ben bu istekleri bir yerde yakalayabilir miyim acaba karşı tarafa ne gidiyor da problem çıkarıyor diye düşünürken şu siteyi keşfettim Webhook.site - Test, process and transform emails and HTTP requests
Bu sitenin size özel oluşturduğu URL adresine sorgularınızı gönderiyorsunuz ve kendisine gelen istekleri yakalayıp size sunuyor böylece karşı tarafa ne gönderdiğinizi öğrenmiş oluyorsunuz.
Peki gelelim hataya.
Konuda da yazdığım şekilde
StringContent ile Content Type belirlerken StringContent methodunun 3. parametresine tip göndermeme bunu da almasına rağmen bir şekilde içerik tipini json olarak algılamıyor sorguyu düz metin olarak gönderiyor.
Ben de kodu şu şekilde güncelledim.
Gece 3:45 de mutlu son
Koddaki karşılığını ise şöyle yazdım;
C#:
public class PostCookieContent
{
public string client_id { get; set; }
public string nonce { get; set; }
public string redirect_uri { get; set; }
public string response_type { get; set; }
}
C#:
PostCookieContent body = new PostCookieContent()
{
client_id = "play-valorant-web-prod",
nonce = "1",
redirect_uri = "https://playvalorant.com/opt_in",
response_type = "token id_token"
};
string json = JsonConvert.SerializeObject(body);
var httpContent = new StringContent(json.ToString(), Encoding.UTF8, "application/json");
string api_url = "https://auth.riotgames.com/api/v1/authorization";
var response = client.PostAsync(api_url, httpContent).Result;
Sonuç
Nerede hata yapıyorum bir türlü çözemedim.
Güncelleme:
Sorunu çözmüş bulunmaktayım. Nasıl çözdüğümü soracak olursanız da birden bire ben bu istekleri bir yerde yakalayabilir miyim acaba karşı tarafa ne gidiyor da problem çıkarıyor diye düşünürken şu siteyi keşfettim Webhook.site - Test, process and transform emails and HTTP requests
Bu sitenin size özel oluşturduğu URL adresine sorgularınızı gönderiyorsunuz ve kendisine gelen istekleri yakalayıp size sunuyor böylece karşı tarafa ne gönderdiğinizi öğrenmiş oluyorsunuz.
Peki gelelim hataya.
Konuda da yazdığım şekilde
C#:
var httpContent = new StringContent(json.ToString(), Encoding.UTF8, "application/json");
Ben de kodu şu şekilde güncelledim.
C#:
var httpContent = new StringContent(json.ToString());
httpContent.Headers.ContentType = System.Net.Http.Headers.MediaTypeHeaderValue.Parse("application/json");
Gece 3:45 de mutlu son