Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Https Post gittigidiyor
#1
Gittigidiyor soap servisini kullanmam gerekti. Soap UI ile post işlemini yapabiliyorum ancak bunu idhttp ile yapamadım forumdaki bazı konular var ancak yine bir sonuca ulaşamadım. Soap Uı ile post sonrası

aUn84o.png

  IdHTTP.Request.CustomHeaders.UnfoldLines := True;
    rbody2:=TStringStream.Create(memo1.Text);
    IdHTTP.IOHandler             := sSSL;
    IdHTTP.ProtocolVersion       :=pv1_1;
    IdHTTP.Request.Connection:='Keep-Alive';
    IdHTTP.Request.Accept := 'gzip, deflate';
    IdHTTP.Request.ContentType := 'text/xml;charset=UTF-8';
    IdHTTP.Request.ContentEncoding := 'utf-8';
    IdHTTP.Request.ContentLength:=Length(UTF8Encode(memo1.Text));
    IdHTTP.Request.BasicAuthentication := true;
    IdHTTP.Request.Host:='dev.gittigidiyor.com:8443';
    IdHTTP.Request.CustomHeaders.Add('Authorization: Basic blabla');
    sonuc:=IdHTTP.Request.ToString;
    sonuc:= IdHTTP.Post('https://dev.gittigidiyor.com:8443/listingapi/ws/IndividualSaleService' , rbody2);
    showmessage(sonuc);

aldığım hata ise
aUn74s.png
Cevapla
#2
User name ve password gerekmiyor mu ?
Cevapla
#3
(06-01-2021, Saat: 21:38)donkisotny Adlı Kullanıcıdan Alıntı: Gittigidiyor soap servisini kullanmam gerekti. Soap UI ile post işlemini yapabiliyorum ancak bunu idhttp ile yapamadım forumdaki bazı konular var ancak yine bir sonuca ulaşamadım. Soap Uı ile post sonrası

aUn84o.png

  IdHTTP.Request.CustomHeaders.UnfoldLines := True;
    rbody2:=TStringStream.Create(memo1.Text);
    IdHTTP.IOHandler             := sSSL;
    IdHTTP.ProtocolVersion       :=pv1_1;
    IdHTTP.Request.Connection:='Keep-Alive';
    IdHTTP.Request.Accept := 'gzip, deflate';
    IdHTTP.Request.ContentType := 'text/xml;charset=UTF-8';
    IdHTTP.Request.ContentEncoding := 'utf-8';
    IdHTTP.Request.ContentLength:=Length(UTF8Encode(memo1.Text));
    IdHTTP.Request.BasicAuthentication := true;
    IdHTTP.Request.Host:='dev.gittigidiyor.com:8443';
    IdHTTP.Request.CustomHeaders.Add('Authorization: Basic blabla');
    sonuc:=IdHTTP.Request.ToString;
    sonuc:= IdHTTP.Post('https://dev.gittigidiyor.com:8443/listingapi/ws/IndividualSaleService' , rbody2);
    showmessage(sonuc);

aldığım hata ise
aUn74s.png

Kullandığınız protokolü ilgili servis kabul etmiyor. TLS1, TLS1_1, TLS1_2, TLS1_3, SSL2, SSL3 gibisinden güvenli protokoller vardır. Buradaki ayarlamayı ilgili sitenin protokolüne uygun yapmanız gerekmekte. Birde openssl için kullanılan DLL'leri kontrol ediniz.


(06-01-2021, Saat: 22:01)enigma Adlı Kullanıcıdan Alıntı: User name ve password gerekmiyor mu ?

    IdHTTP.Request.CustomHeaders.Add('Authorization: Basic blabla');

Burada gönderiyor sanırım. Eğer gittigidiyor farklı bir parametre ile istemiyorsa.
kisisel_logo_dark.png
WWW
Cevapla
#4
(06-01-2021, Saat: 21:38)donkisotny Adlı Kullanıcıdan Alıntı: Gittigidiyor soap servisini kullanmam gerekti. Soap UI ile post işlemini yapabiliyorum ancak bunu idhttp ile yapamadım forumdaki bazı konular var ancak yine bir sonuca ulaşamadım. Soap Uı ile post sonrası

aUn84o.png

  IdHTTP.Request.CustomHeaders.UnfoldLines := True;
    rbody2:=TStringStream.Create(memo1.Text);
    IdHTTP.IOHandler             := sSSL;
    IdHTTP.ProtocolVersion       :=pv1_1;
    IdHTTP.Request.Connection:='Keep-Alive';
    IdHTTP.Request.Accept := 'gzip, deflate';
    IdHTTP.Request.ContentType := 'text/xml;charset=UTF-8';
    IdHTTP.Request.ContentEncoding := 'utf-8';
    IdHTTP.Request.ContentLength:=Length(UTF8Encode(memo1.Text));
    IdHTTP.Request.BasicAuthentication := true;
    IdHTTP.Request.Host:='dev.gittigidiyor.com:8443';
    IdHTTP.Request.CustomHeaders.Add('Authorization: Basic blabla');
    sonuc:=IdHTTP.Request.ToString;
    sonuc:= IdHTTP.Post('https://dev.gittigidiyor.com:8443/listingapi/ws/IndividualSaleService' , rbody2);
    showmessage(sonuc);

aldığım hata ise
aUn74s.png


Programınızın çalıştığı klasörde veya Windows'ın bir sistem klasöründe (örn. C:\Windows\SysWOW64) libeay32.dll ve ssleay32.dll dosyalarının bulunması gerekmektedir. Bu dosyaları

https://www.dll.gen.tr/dosya/5531.zip
https://www.dll.gen.tr/dosya/2754.zip

bağlantılarından indirebilirsiniz.
WWW
Cevapla
#5
Merhaba ,
Farklı bir yaklaşım önerisi olarak , ilgili API madem SOAP API, https://dev.gittigidiyor.com:8443/listin...rvice?wsdl bu WSDL adresini Delphideki WSDL Importer aracıyla import edip arayüz sınıfının oluşmasını sağlayıp direk nesne modeliyle kullansanız tahminimce daha az sorun yaşarsınız.
Cevapla
#6
(07-01-2021, Saat: 09:34)csunguray Adlı Kullanıcıdan Alıntı:
(06-01-2021, Saat: 21:38)donkisotny Adlı Kullanıcıdan Alıntı: Gittigidiyor soap servisini kullanmam gerekti. Soap UI ile post işlemini yapabiliyorum ancak bunu idhttp ile yapamadım forumdaki bazı konular var ancak yine bir sonuca ulaşamadım. Soap Uı ile post sonrası

aUn84o.png

  IdHTTP.Request.CustomHeaders.UnfoldLines := True;
    rbody2:=TStringStream.Create(memo1.Text);
    IdHTTP.IOHandler             := sSSL;
    IdHTTP.ProtocolVersion       :=pv1_1;
    IdHTTP.Request.Connection:='Keep-Alive';
    IdHTTP.Request.Accept := 'gzip, deflate';
    IdHTTP.Request.ContentType := 'text/xml;charset=UTF-8';
    IdHTTP.Request.ContentEncoding := 'utf-8';
    IdHTTP.Request.ContentLength:=Length(UTF8Encode(memo1.Text));
    IdHTTP.Request.BasicAuthentication := true;
    IdHTTP.Request.Host:='dev.gittigidiyor.com:8443';
    IdHTTP.Request.CustomHeaders.Add('Authorization: Basic blabla');
    sonuc:=IdHTTP.Request.ToString;
    sonuc:= IdHTTP.Post('https://dev.gittigidiyor.com:8443/listingapi/ws/IndividualSaleService' , rbody2);
    showmessage(sonuc);

aldığım hata ise
aUn74s.png


Programınızın çalıştığı klasörde veya Windows'ın bir sistem klasöründe (örn. C:\Windows\SysWOW64) libeay32.dll ve ssleay32.dll dosyalarının bulunması gerekmektedir. Bu dosyaları

https://www.dll.gen.tr/dosya/5531.zip
https://www.dll.gen.tr/dosya/2754.zip

bağlantılarından indirebilirsiniz.

İlgili dosyaları hem exe nin bulunduğu yere hemde syswow64 dizinine kopyaladım ama hata değişmedi.
Cevapla
#7
(08-01-2021, Saat: 11:31)donkisotny Adlı Kullanıcıdan Alıntı:
(07-01-2021, Saat: 09:34)csunguray Adlı Kullanıcıdan Alıntı: Programınızın çalıştığı klasörde veya Windows'ın bir sistem klasöründe (örn. C:\Windows\SysWOW64) libeay32.dll ve ssleay32.dll dosyalarının bulunması gerekmektedir. Bu dosyaları

https://www.dll.gen.tr/dosya/5531.zip
https://www.dll.gen.tr/dosya/2754.zip

bağlantılarından indirebilirsiniz.

İlgili dosyaları hem exe nin bulunduğu yere hemde syswow64 dizinine kopyaladım ama hata değişmedi.

Formumda çok örneği var. Çokça da uyarı yapılmıştı. Http bileşenleri yerine, REST bileşenlerini kullanın. Bunların SSL desteği gömülü geliyor. Dolayısıyla bu dll'leri uygulama ile birlikte taşımak zorunda kalmıyorsunuz.
Begin : = end / 2;
Cevapla
#8
@Halil Han BADEM önemli bir detay vermiş, bunu gözden kaçırmış görünüyorsunuz.

Sizin IOHandler olarak belirlediğiniz sSSL nesnesinin     Method değerinde ne yazıyor onu sırasıyla değiştirip tekrar deneyin.  DLL'leri proje EXE klasöründe olması kafi. Bunu zaten bulmuş görünüyor. Protokol hatası olarak değerlendiriyorum

örneğin 
  sSSL.Method      := sslvSSLv23;
Saygılarımla
Muharrem ARMAN

guplouajuixjzfm15eqb.gif
Cevapla
#9
(08-01-2021, Saat: 11:53)mrmarman Adlı Kullanıcıdan Alıntı: @Halil Han BADEM önemli bir detay vermiş, bunu gözden kaçırmış görünüyorsunuz.

Sizin IOHandler olarak belirlediğiniz sSSL nesnesinin     Method değerinde ne yazıyor onu sırasıyla değiştirip tekrar deneyin.  DLL'leri proje EXE klasöründe olması kafi. Bunu zaten bulmuş görünüyor. Protokol hatası olarak değerlendiriyorum

örneğin 
  sSSL.Method      := sslvSSLv23;

@mrmarman hocam teşekkür ederim burasını atlamışım 
sssl.SSLOptions.Method:=sslvSSLv23;
ekleyince düzeldi.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  IdHttp post tuhaf bir istisna TuncayDelphi 9 1.331 23-03-2023, Saat: 00:32
Son Yorum: TuncayDelphi
  Rest Servis Body Param Json Post bydelphi 2 952 05-12-2022, Saat: 17:05
Son Yorum: bydelphi
  Rest Debugger ile POST işlemi 41linea41 0 456 18-10-2022, Saat: 20:25
Son Yorum: 41linea41
Photo REST API Post ile Token Alma ahmet6513 4 1.474 27-09-2022, Saat: 15:53
Son Yorum: ahmet6513
  Rest Api İle Json Dosya Post Etme ahmet6513 16 4.498 30-03-2022, Saat: 11:22
Son Yorum: RAD Coder



Konuyu Okuyanlar: 1 Ziyaretçi