Sayfayı Yazdır | Pencereyi Kapat

TCLRest Bağlanma Sorunu

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Clomosy ile değişken kullanımı
Forum Tanımlaması: TRObject dili ile değişken tanımlaması ve ekranda gösterme
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1338
Tarih: 16 Şubat 2026 Saat 13:49
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: TCLRest Bağlanma Sorunu
Mesajı Yazan: sumeyyesoy
Konu: TCLRest Bağlanma Sorunu
Mesaj Tarihi: 16 Şubat 2026 Saat 09:35
oid OnGeminiResponse;
{
  try
    metinMemo.Lines.Clear;
    
    if (RestObj.StatusCode == 200)
    {
      metinMemo.Lines.Add('--- PLAN OLUŞTURULDU ---');
      metinMemo.Lines.Add(RestObj.Response); 
    }
    else
    {
      metinMemo.Lines.Add('Hata Oluştu. Kod: ' + IntToStr(RestObj.ResponseHeaders.Count));
      metinMemo.Lines.Add(RestObj.Response);
    }
  except
    ShowMessage('Bir hata oluştu: ' + LastExceptionMessage);
  }
}

void PlanOlustur;
var
  Url, Prompt,CleanPrompt JsonBody: String;
{
  if ((SecilenKita <> '') && (SecilenGun <> '')) 
  {
    metinMemo.Lines.Clear;
    metinMemo.Lines.Add(SecilenKita + ' bölgesi için ' + SecilenGun + ' süreli plan hazırlanıyor...');
    metinMemo.Lines.Add('Lütfen bekleyin...');
    
  
    Prompt = 'Bana ' + SecilenKita + ' bölgesinde, ' + SecilenGun + ' sürecek, gün gün ayrılmış, detaylı ve Türkçe bir gezi rehberi oluştur. Maddeler halinde olsun.';

    RestObj.BaseURL = ' https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key=" rel="nofollow - https://generativelanguage.googleapis.com/v1/models/gemini-1.5-flash:generateContent?key= ' + Google_API_Key;

    RestObj.Method = rmPost;
    RestObj.ContentType = 'application/json';
    RestObj.AddBody('{"contents": [{"parts": [{"text": "' + Prompt + '"}]}]}','application/json' );

    RestObj.Execute;
  }
}


  Google_API_Key = 'apikeyBuKısımda'; 


  RestObj = TclRest.Create;
  RestObj.OnCompleted = 'OnGeminiResponse'; 


Gemini' a bağlanmak istiyorum ancak yukarıdaki kod çalışmıyor. Hata ile ilgili yardım edebilir misiniz?
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">



Cevaplar:
Mesajı Yazan: Emr.Erkmn
Mesaj Tarihi: 16 Şubat 2026 Saat 10:29
Merhaba Sümeyye, 
Gelen hata nedir benimle paylaşabilir misin?

AddBody kısmında JSON oluştururken, eğer Prompt değişkeni içinde enter karakteri veya tırnak işareti varsa JSON bozulur ve API hata verebilir 

Tam görebilmek için kodu atabilir misin https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">


Mesajı Yazan: M-Guney
Mesaj Tarihi: 16 Şubat 2026 Saat 10:33
GOOGLE AI Studio'dan alınmış API keyine atanmış modeller  https://generativelanguage.googleapis.com/v1/models?key=YOUR_API_KEY" rel="nofollow - https://generativelanguage.googleapis.com/v1/models?key=YOUR_API_KEY  kullanılarak test edilmiş ve 1.5 gemini flash modelini kapsamadığı tespit edilmiştir. ve bunun ardından  https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=" rel="nofollow - https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key= YOUR_API_KEY ile değiştirilerek problem giderilmiştir. https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">


Mesajı Yazan: Emr.Erkmn
Mesaj Tarihi: 16 Şubat 2026 Saat 10:40
var
  MyForm : TCLForm;
  metinMemo : TclMemo;
  btnGonder : TclProButton;
  RestObj : TclRest;
  Google_API_Key : String;
  
  SecilenKita, SecilenGun : String; 

void OnGeminiResponse;
{
  try
    if (RestObj.StatusCode == 200)
    {
      metinMemo.Lines.Add('--- BAŞARILI ---');
      metinMemo.Lines.Add(RestObj.Response); 
    }
    else
    {
      metinMemo.Lines.Add(' HATA');
      metinMemo.Lines.Add('Kod: ' + IntToStr(RestObj.StatusCode));
      metinMemo.Lines.Add('Cevap: ' + RestObj.Response);
    }
  except
    ShowMessage('Cevap işlenirken hata oluştu: ' + LastExceptionMessage);
  }
}

void PlanOlustur;
var
  Prompt, JsonBody : String;
{
  SecilenKita = 'Avrupa';
  SecilenGun = '3 gün';

  if ((SecilenKita <> '') && (SecilenGun <> '')) 
  {
    metinMemo.Lines.Clear;
    metinMemo.Lines.Add('Gemini sunucusuna bağlanılıyor...');
    
    Prompt = 'Bana ' + SecilenKita + ' bölgesinde, ' + SecilenGun + ' sürecek bir gezi planı yap.';
    
    
    RestObj.BaseURL = ' https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=" rel="nofollow - https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key= ' + Google_API_Key;
    
    RestObj.Method = rmPost;
    
    JsonBody = '{ "contents": [{ "parts": [{"text": "' + Prompt + '"}] }] }';
    
    RestObj.AddBody(JsonBody, 'application/json'); 
    
    RestObj.Execute;
  }
  else
  {
    ShowMessage('Lütfen kıta ve gün bilgilerini kontrol edin.');
  }
}

{
  MyForm = TCLForm.Create(Self);
  
  Google_API_Key = 'BURAYA_API_KEY_YAZIN'; 
  
  metinMemo = MyForm.AddNewMemo(MyForm, 'metinMemo', '');
  metinMemo.Align = alClient;
  
  btnGonder = MyForm.AddNewProButton(MyForm, 'btnGonder', 'PLAN OLUŞTUR');
  btnGonder.Align = alTop;
  btnGonder.Height = 60;
  btnGonder.Margins.Bottom = 10;
  
  MyForm.AddNewEvent(btnGonder, tbeOnClick, 'PlanOlustur');

  RestObj = TclRest.Create;
  RestObj.OnCompleted = 'OnGeminiResponse'; 
  
  MyForm.Run;
}

Kodu inceleyebilir misin? 
Örnek olarak yazdım 
https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">


Mesajı Yazan: sumeyyesoy
Mesaj Tarihi: 16 Şubat 2026 Saat 11:52
Gemini API' sini destekleyen sürümün 2.5 olduğu için kod hatası aldığımı fark ettim.   "RestObj.BaseURL = ' https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key=" rel="nofollow - https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent?key= ' + Google_API_Key;" https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" rel="nofollow - https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
ekleyerek kodu çalıştırabildim. Eklediğiniz kodu da projeye ekleyerek deneyeceğim. Teşekkürler.



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net