In dit artikel hebben we geprobeerd antwoord te geven op alle belangrijke vragen. De eerste stap bij het oplossen van het vraagstuk is vaststellen welk beveiligingssysteem wordt gebruikt. Daarvoor kun je de lijst met populaire captcha’s en anti-botbeveiligingssystemen raadplegen, met visuele voorbeelden en kernkenmerken die je helpen snel te bepalen waarmee je te maken hebt.
Als je ontdekt dat je website Yidun (NECaptcha) gebruikt, is de volgende stap om de eigenschappen en werking ervan uitgebreider te bestuderen. In dit artikel vind je ook een handleiding voor het integreren van Yidun (NECaptcha), zodat je volledig begrijpt hoe het systeem op je website werkt. Zo kun je niet alleen de huidige bescherming beter doorgronden, maar ook het onderhoud ervan goed plannen.
Werken met CapMonster Cloud via de API bestaat doorgaans uit de volgende stappen:
type - YidunTask
websiteURL - volledige URL van uw pagina met de captcha;
websiteKey - waarde van de siteKey;
userAgent - User-Agent van de browser. Verstuur alleen een actuele UA van Windows.
https://api.capmonster.cloud/createTask
{
"clientKey": "API_KEY",
"task": {
"type": "YidunTask",
"websiteURL": "https://www.example.com",
"websiteKey": "6cw0f0485d5d46auacf9b735d20218a5",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36"
}
}
{
"errorId":0,
"taskId":407533072
}https://api.capmonster.cloud/getTaskResult{
"clientKey":"API_KEY",
"taskId": 407533072
}
{
"errorId": 0,
"errorCode": null,
"errorDescription": null,
"solution": {
"token": "CN31_9AwsPmaYcJameP_09rA0vkVMQsPij...RXTlFJFc3"
},
"status": "ready"
}
// npm install playwright @zennolab_com/capmonstercloud-client
// npx playwright install chromium
import { chromium } from "playwright";
import { CapMonsterCloudClientFactory, ClientOptions, YidunRequest } from "@zennolab_com/capmonstercloud-client";
(async () => {
// Instellingen
const TARGET_URL = "https://example.com/";
const WEBSITE_KEY = "6cw0f0485d5d46auacf9b735d20218a5"; // uw Yidun siteKey
const CMC_API_KEY = "YOUR_API_KEY"; // uw CapMonster Cloud API-sleutel
// 1) Start de browser
const browser = await chromium.launch({ headless: false });
const page = await browser.newPage();
await page.goto(TARGET_URL, { waitUntil: "domcontentloaded" });
const cmc = CapMonsterCloudClientFactory.Create(
new ClientOptions({ clientKey: CMC_API_KEY })
);
// 2) Verzend verzoek om Yidun captcha op te lossen
const solution = await cmc.Solve(
new YidunRequest({
websiteURL: TARGET_URL,
websiteKey: WEBSITE_KEY,
userAgent: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36"
})
);
const token = solution.solution.token; // Ontvang Yidun token
console.log("Yidun token:", token);
// 3) Voeg token in hidden veld en verzend formulier
await page.evaluate((t) => {
// Vind hidden input voor token (vervang door uw waarde)
const input = document.querySelector('input[name="NECaptchaValidate"]');
if (input) input.value = t;
// Verzend het formulier als het aanwezig is op de pagina
const form = document.querySelector("form");
if (form) form.submit();
}, token);
console.log("Yidun captcha opgelost, token ingevoerd en formulier verzonden!");
})();
1. Ga naar paneel en maak een account aan (via telefoon of e-mail).
2. Selecteer in het paneel: 产品与服务 → 验证码服务 (Captcha Service).
3. Maak een nieuw project (应用).
4. U ontvangt het volgende:
5. Voorbeeld frontend Yidun integratie
<!-- YiDun-script koppelen -->
<script src="https://cstaticdun.126.net/load.min.js"></script>
<!-- Captcha-container -->
<div id="captcha"></div>
<script>
// Captcha initialisatie
initNECaptcha({
captchaId: "YOUR_CAPTCHA_ID", // uw captchaId uit het Yidun-paneel
element: "#captcha", // waar het widget wordt geplaatst
// Wordt aangeroepen na succesvolle voltooiing
onVerify: (err, data) => {
if (!err) {
// data.validate -- captcha-token
// Opslaan in een verborgen veld van het formulier
document.querySelector("#validate").value = data.validate;
}
}
});
</script>
<!-- Formulier dat validate naar uw server verzendt -->
<form method="POST" action="/verify">
<!-- Hier schrijft de captcha de token -->
<input type="hidden" id="validate" name="NECaptchaValidate">
<button>Submit</button>
</form>
6. Server-side Yidun verificatie (PHP voorbeeld)
<?php
// Data uit het Yidun-paneel
$CAPTCHA_ID = "YOUR_CAPTCHA_ID";
$SECRET_ID = "YOUR_SECRET_ID";
// Token ontvangen van frontend
$validate = $_POST["NECaptchaValidate"] ?? null;
// Als er geen token is — fout
if (!$validate) {
echo "Captcha not passed";
exit;
}
// POST-verzoek voorbereiden
$url = "https://c.dun.163yun.com/api/v2/verify";
$postData = http_build_query([
"captchaId" => $CAPTCHA_ID,
"secretId" => $SECRET_ID,
"validate" => $validate
]);
// Verstuur verzoek naar YiDun
$opts = [
"http" => [
"method" => "POST",
"header" => "Content-Type: application/x-www-form-urlencoded",
"content" => $postData
]
];
$context = stream_context_create($opts);
$result = file_get_contents($url, false, $context);
// JSON decoderen
$data = json_decode($result, true);
// Resultaat controleren
if ($data["result"] === true) {
echo "Captcha passed successfully";
} else {
echo "Verification error: " . json_encode($data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT);
}
Als je een website in beheer krijgt waarop al een captcha of een ander beveiligingssysteem is geïnstalleerd en je geen toegang hebt tot de code, is dat geen probleem! Het is vrij eenvoudig te bepalen welke technologie precies wordt gebruikt. Voor het controleren of alles correct werkt, kun je de herkenningsservice CapMonster Cloud in een geïsoleerde testomgeving gebruiken, zodat je zeker weet dat het tokenverwerkingsmechanisme en de validatielogica correct functioneren.
In het geval van Yidun (NECaptcha) is het voldoende om het systeem te herkennen, het gedrag te analyseren en te bevestigen dat de beveiliging correct werkt. In het artikel hebben we laten zien hoe je Yidun (NECaptcha) kunt herkennen en waar je instructies vindt om het te koppelen of opnieuw te configureren, zodat je de bescherming met vertrouwen kunt onderhouden en de werking onder controle kunt houden.