Chrome genişlənməsindən müşahidə olunan çıxış IP-sini yoxlayın
Genişlənmə mənbəyindən nəzarət etdiyiniz son nöqtəyə məhdud sorğu göndərin və yoxlamanın həqiqətən nəyi sübut etdiyini bildirin.
Chrome genişlənməsində proksi yoxlaması üçün cavabı əvvəlcədən bilinən bir hədəf lazımdır. Nəzarət etdiyiniz HTTPS son nöqtəsindən istifadə edin, məsələn gördüyü ünvanı saxlayan kiçik JSON obyekti qaytaran bir nöqtə.
Sorğunu genişlənmə kontekstindən, məsələn xidmət işçisindən və ya genişlənmə səhifəsindən icra edin və son nöqtəni manifestin host icazələrində göstərin:
"host_permissions": ["https://probe.example/*"]
Host icazəsi məzmun skriptinə eyni çarpaz mənşə imtiyazlarını vermir. Yoxlamanı genişlənmə kontekstində saxlayın, yeridilmiş skriptin eyni sorğunu edə biləcəyini güman etməyin.
async function probe() {
const controller = new AbortController();
const timer = setTimeout(() => controller.abort(), 5000);
try {
const response = await fetch('https://probe.example/ip', {
cache: 'no-store',
signal: controller.signal,
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const result = await response.json();
if (typeof result.ip !== 'string') throw new Error('Bad probe body');
return result.ip;
} finally {
clearTimeout(timer);
}
}
Host adı yer tutucudur. Server və müştəri cavab formatı və keş siyasəti barədə razılaşmalıdır. Rədd edilən sorğuları və pozulmuş cavabları genişlənmənin çağıran hissəsində idarə edin, onları etibarlı çıxış ünvanı kimi göstərməyin.
Müşahidəni dəqiq adlandırın
Uğurlu nəticə bu sorğunun son nöqtəyə çatdığını və gözlənilən cavab formasını aldığını sübut edir. Müqayisənin mənası olduğu yerdə müşahidə olunan ünvanı nəzərdə tutduğunuz marşrutla qarşılaşdırın. Konfiqurasiya edilmiş proksinin dinlədiyi IP onun ictimai çıxışı olmaya bilər.
PAC qaydası və ya yan keçmə siyahısı yoxlamanı birbaşa göndərə bilər, halbuki başqa hədəf proksidən istifadə edir. Proksi parametrlərini oxumaq konfiqurasiya sübutu verir; sorğu isə bu hədəf üçün sübut verir. Heç biri təkbaşına hər sekmenin və ya URL-in eyni marşrutu izlədiyini sübut etmir.
İnterfeysdə gözləmə müddətini, HTTP xətasını və gözlənilməz cavab gövdəsini ayrı saxlayın. Bir sorğudan sonra bütün maşını oflayn elan etməkdənsə “bu yoxlama alınmadı” demək daha faydalıdır.