Apidog'da Yanıt Verilerini Nasıl Kod Çözülür ve Şifresi Çözülür

Bazen API verileri şifrelenir. Apidog'daki JS kütüphaneleri veya Python/JavaScript ile okunabilir hale getirilebilir.

Efe Demir

Efe Demir

5 June 2025

Apidog'da Yanıt Verilerini Nasıl Kod Çözülür ve Şifresi Çözülür

Bazen, API yanıt verileri kodlanır veya şifrelenir ve okunabilir düz metne dönüştürülmesi gerekebilir. Bunu, Apidog 'daki yerleşik JS kütüphanelerini kullanarak veya işleme için Python veya JavaScript gibi harici programlama dillerini çağırarak başarabilirsiniz.

Örneğin, Base64 ile kodlanmış bir veri, yerleşik kütüphane kullanılarak çözülebilir.

Decode and Decrypt

Aşağıda, kod çözme ve şifre çözmenin bazı yaygın örneklerini paylaşacağız. Henüz Apidog yüklemediyseniz, başlamak için düğmeye tıklayın!

button

Yanıt Verilerini Kod Çözme

Base64 Kod Çözme

Bir API, Base64 ile kodlanmış veriler döndürdüğünde, kodunu çözmek için Apidog'a yerleşik CryptoJS kütüphanesini kullanabilirsiniz. İşte nasıl yapılacağı:

API'nin aşağıdaki Base64 ile kodlanmış verileri döndürdüğünü varsayalım:

{"data": "SGVsbG8gd29ybGQh"}

Bu Base64 verilerini şu şekilde bir komut dosyasıyla çözebilirsiniz:

// CryptoJS kütüphanesini içe aktar
const CryptoJS = require("crypto-js");

// Base64 ile kodlanmış dize (yanıt verilerinden çıkarılır)let encodedData = {"data": "SGVsbG8gd29ybGQh"
};

// Base64 verilerini çözlet decodedData = CryptoJS.enc.Base64.parse(encodedData.data).toString(CryptoJS.enc.Utf8);

// Çözülen sonucu çıktıla
console.log(decodedData); // "Hello, world!"

Apidog'da, yukarıdaki mantıkla "Post-request" bölümüne özel bir komut dosyası ekleyebilirsiniz. İsteği gönderdikten sonra, çözülen verileri yanıt panelinin "Console" bölümünde görüntüleyebilirsiniz.

Decrypt code in console

Ek olarak, çözülen verileri gelecekte kullanmak üzere bir ortam değişkeninde saklayabilirsiniz, şu şekilde:

pm.environment.set("decodedData", decodedData);

JSON yanıtı Base64 ile kodlanmış veriler içeriyorsa, CryptoJS'i benzer şekilde kullanarak kodunu çözebilir ve çözülen JSON verilerini pm.response.setBody() yöntemiyle yanıt gövdesi olarak ayarlayabilirsiniz. İşte Base64 ile kodlanmış bir JSON yanıtı için bir örnek:

 a Base64 encoded JSON response

Kodunu çözmek ve çözülen JSON verilerini Yanıt Gövdesinde görüntülemek için, örnek komut dosyası aşağıdaki gibidir:

// CryptoJS kütüphanesini içe aktar
const CryptoJS = require("crypto-js");

// Base64 ile kodlanmış dize (yanıt verilerinden çıkarılır)let encodedData = pm.response.text();

// Base64 verilerini çözlet decodedData = CryptoJS.enc.Base64.parse(encodedData).toString(CryptoJS.enc.Utf8);

// Çözülen JSON dizesini ayrıştırlet jsonData = JSON.parse(decodedData);

// Ayrıştırılan JSON verilerini yanıt gövdesi olarak ayarla
pm.response.setBody(JSON.stringify(jsonData));
decoded JSON data

URLEncode Kod Çözme

Yanıt verileri URL ile kodlandığında, kodunu çözmek için JavaScript'in yerleşik decodeURIComponent() yöntemini kullanabilirsiniz.

Örneğin, aşağıdaki URL ile kodlanmış JSON dizesini döndüren bir API'yi düşünün:

{"name": "%E5%BC%A0%E4%B8%89","email": "qxhswppn%40gmail.com"
}

Bu JSON dizesinin değerlerinin kodunu şu şekilde çözebilirsiniz:

// Bu, yanıttan gelen URL ile kodlanmış JSON verileridirlet response = {"name": "%E5%BC%A0%E4%B8%89","email": "qxhswppn%40gmail.com"
};

// decodeURIComponent kullanarak kodunu çözlet decodedName = decodeURIComponent(response.name);
let decodedEmail = decodeURIComponent(response.email);
console.log(decodedName);  // "Jason"
console.log(decodedEmail);  // "qxhswppn@gmail.com"
Decode by decodeURIComponent()

Yanıt Verilerini Şifre Çözme

AES Şifre Çözme

AES ile şifrelenmiş şifreli metnin şifresini çözmek için, uygun anahtarı veya başlatma vektörünü (IV) sağlamanız gerekir. AES, simetrik şifreleme kullanır, yani hem şifreleme hem de şifre çözme için aynı anahtar kullanılır. Doğru anahtara veya IV'ye sahip değilseniz, şifreli metnin şifresini çözemezsiniz.

ECB modunda AES ile şifrelenmiş şifreli metne sahip olduğunuzu varsayarsak, Apidog'da şifresini çözmek için CryptoJS kütüphanesini şu şekilde kullanabilirsiniz:

// CryptoJS kütüphanesini içe aktarconst CryptoJS = require('crypto-js');

// Base64 ile kodlanmış AES ile şifrelenmiş şifreli metin (yanıt verilerinden çıkarılır)const ciphertext = "Gig+YJFu4fLrrexzam/vblRV3hoT25hPZn0HoNoosHQ=";

// Şifre çözme anahtarı (16/24/32 bayt olduğundan emin olun; genellikle bir ortam değişkeninden okunur)const key = CryptoJS.enc.Utf8.parse('1234567891234567');

// AES Şifre Çözmeconst decryptedBytes = CryptoJS.AES.decrypt(ciphertext, key, {
    mode: CryptoJS.mode.ECB, // Şifre Çözme modu
    padding: CryptoJS.pad.Pkcs7 // Dolgu yöntemi
});

// Şifresi çözülmüş bayt dizisini UTF-8 dizesine dönüştürconst originalText = decryptedBytes.toString(CryptoJS.enc.Utf8);

// Şifresi çözülmüş metni çıktıla
console.log(originalText); // "Hello,Apidog!"

Şifresi çözülmüş verileri yanıt konsolunda görüntüleyebilirsiniz.

AES Decryption

RSA Şifre Çözme

RSA ile şifrelenmiş şifreli metnin şifresini çözmek için, karşılık gelen RSA özel anahtarını sağlamanız gerekir, çünkü RSA asimetrik bir şifreleme algoritmasıdır. Anahtar çifti, bir genel anahtar ve bir özel anahtardan oluşur ve şifre çözme için özel anahtar esastır.

Apidog, RSA şifreli metninin şifresini çözmek için kullanabileceğiniz jsrsasign kütüphanesini (En son sürümü Güncelle) içerir. İşte bir örnek:

// jsrsasign kütüphanesini içe aktar
const jsrsasign = require('jsrsasign');

// Özel anahtarı tanımla (genellikle ortam değişkenlerinden okunur)
const privateKeyPEM = `
-----BEGIN PRIVATE KEY-----
Özel anahtar...
-----END PRIVATE KEY-----
`;

// Şifreli metni tanımla (genellikle yanıt verilerinden çıkarılır)
const ciphertext = '';

// Şifre çözme
const prvKeyObj = jsrsasign.KEYUTIL.getKey(privateKeyPEM);
const decrypted = jsrsasign.KJUR.crypto.Cipher.decrypt(ciphertext, prvKeyObj);
console.log(decrypted);
RSA Decryption

Basit RSA şifreleme ve şifre çözme için eksiksiz bir örnek referansı (jsrsasign sürümünün 10.3.0 olduğunu ve diğer sürümlerin söz diziminin uyumsuz olabileceğini unutmayın), bunu bir Node.js ortamında çalıştırabilir ve Apidog'da gerektiği gibi şifreleme veya şifre çözme işlemleri gerçekleştirebilirsiniz:

const rsa = require('jsrsasign');

// RSA anahtar çifti oluştur
const keypair = rsa.KEYUTIL.generateKeypair("RSA", 2048);
const publicKey = rsa.KEYUTIL.getPEM(keypair.pubKeyObj);
const privateKey = rsa.KEYUTIL.getPEM(keypair.prvKeyObj, "PKCS8PRV");

console.log("Genel Anahtar:", publicKey);
console.log("Özel Anahtar:", privateKey);

// Genel anahtarla şifrele
const plaintext = "Hello, Apidog!";
const pubKeyObj = rsa.KEYUTIL.getKey(publicKey);

const encryptedHex = rsa.KJUR.crypto.Cipher.encrypt(plaintext, pubKeyObj);
console.log("Şifrelenmiş Anahtar:", encryptedHex);

// Özel anahtarla şifreyi çöz
const prvKeyObj = rsa.KEYUTIL.getKey(privateKey);

const decrypted = rsa.KJUR.crypto.Cipher.decrypt(encryptedHex, prvKeyObj);
console.log("Şifresi Çözülmüş Düz Metin:", decrypted);
RSA encryption and decryption in JS

Şifre Çözme İçin Harici Programlar Kullanma

Şifre çözme için Apidog'un yerleşik JS kütüphanelerini kullanmaya ek olarak, şifre çözme gerçekleştirmek için bir "harici program" da çağırabilirsiniz. Harici programları kullanma hakkında daha fazla bilgi için, ayrıntılı talimatlar için Apidog yardım merkezini kontrol edebilirsiniz.

💡
Harici programlar , Harici Program Dizini'nde saklanır ve Java programları için .jar veya diğer dillerdeki komut dosyaları için .py, .php, .js gibi kod dosyalarını içerebilir. Bu dizine, Apidog arayüzünün sağ üst köşesindeki "Ayarlar -> Harici Programlar" aracılığıyla erişebilirsiniz.
External Programs

Örnek: Node.js ile RSA Şifre Çözme

Node.js'de node-forge kütüphanesini kullanarak RSA şifre çözme gerçekleştirmek istiyorsanız, şifre çözme mantığını uygulamak için Harici Program Dizini'nde bir .js dosyası oluşturabilirsiniz. İşte nasıl yapılacağı:

  1. Şifre Çözme Komut Dosyası Oluşturma İlk olarak, bir .js dosyası oluşturun ve şifre çözme mantığını uygulayın. node-forge kütüphanesini kullanacağınız için, npm veya yarn kullanarak bu dizine yükleyin. Komut dosyanızın nasıl görünebileceği aşağıdadır:
// node-forge kütüphanesini içe aktar
const forge = require('node-forge');
// Komut satırı argümanlarını al
const args = process.argv.slice(2);
// Özel anahtarınız (PEM formatı)
const privateKeyPem = `
-----BEGIN RSA PRIVATE KEY-----
özel anahtar……
-----END RSA PRIVATE KEY-----`;
// Komut satırından şifrelenmiş şifreli metin
const encrypted = args[0];
// PEM formatındaki özel anahtarı forge özel anahtar nesnesine dönüştür
const privateKey = forge.pki.privateKeyFromPem(privateKeyPem);
// Base64 ile kodlanmış şifrelenmiş verileri bayt dizisine dönüştür
const encryptedBytes = forge.util.decode64(encrypted);
// Verilerin şifresini çöz
const decrypted = privateKey.decrypt(encryptedBytes, 'RSA-OAEP');
// console.log() çıktısı Apidog tarafından yakalanacaktır
console.log(decrypted);
  1. Apidog'da Harici Programı Çağırma Şifre çözme komut dosyasını yazdıktan sonra, bu harici programı çağırmak için Apidog'un "Post-request" bölümünde pm.executeAsync() yöntemini kullanabilirsiniz. Şifre çözme komut dosyanızın doğru harici program dizinine yerleştirildiğinden ve başvurduğunuz yolun bu dizine göre olduğundan emin olun. İşte nasıl çağrılacağı:
// Şifrelenmiş şifreli metin (genellikle yanıt verilerinden elde edilir)
const encrypted = 'iDqUyR3BpaTqpzq…………';
// Harici program yolu, parametreleri geçme
const result = await pm.executeAsync('./nodejs-rsa/rsa.js', [`${encrypted}`]);
console.log('Sonuç:', result);

Apidog'da isteği gönderdiğinizde, şifreli metni tanımladığınız harici programa otomatik olarak iletecek, şifre çözmeyi gerçekleştirecek ve console.log() aracılığıyla sonuç çıktısını yakalayacak ve sonuçta şifresi çözülmüş düz metni döndürecektir.

Bu tür şifre çözme, Node.js ile sınırlı değildir, Java, PHP, Python, Go vb. gibi diğer programlama dilleri de benzer işlemleri ve çağrıları gerçekleştirebilir.

Sonuç

Bu makalede özetlenen yöntemleri kullanarak, Apidog'daki yanıt verilerinin kodunu etkili bir şekilde çözebilir ve şifresini çözebilir, okunabilir düz metne dönüştürebilirsiniz. Şimdi Apidog'u deneyin!

button

Explore more

Cursor ile Deepseek R1'i Yerel Olarak Nasıl Kullanılır

Cursor ile Deepseek R1'i Yerel Olarak Nasıl Kullanılır

Yerel DeepSeek R1'i Cursor IDE ile kurun ve yapılandırın. Özel, uygun maliyetli AI kodlama yardımı için.

4 June 2025

Android'de Gemma 3n Nasıl Çalıştırılır?

Android'de Gemma 3n Nasıl Çalıştırılır?

Google AI Edge Gallery'den Gemma 3n'i Android'e kurup çalıştırmayı öğrenin.

3 June 2025

GitHub Eylemleri ile Claude Kodunu Nasıl Kullanılır

GitHub Eylemleri ile Claude Kodunu Nasıl Kullanılır

Claude Code'u GitHub Actions ile entegre edin: Kod incelemeleri, hata düzeltmeleri ve özellik uygulamaları. Kurulum, iş akışları ve geliştiriciler için ipuçları.

29 May 2025

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin