NiceNIC API v2 -pyyntöftaimaattivirheet: päätepiste, otsikot, JSON ja parametrit
Jos NiceNIC Reseller API v2 -pyyntösi saavuttaa API:n mutta ei toimi odotetusti, ongelma ei välttämättä ole todennuksessa. Se voi johtua pyyntöftaimaatin ongelmasta. Tämä opas auttaa verkkotunnusten jälleenmyyjiä, hosting-palveluntarjoajia, kehittäjiä, toimistoja ja WHMCS-käyttäjiä vianmäärityksessä yleisissä NiceNIC API v2 -pyyntöftaimaattivirheissä, mukaan lukien päätepistevirheet, puuttuvat otsikot, väärä Content-Tyyppi, virheellinen JSON, puuttuvat parametrit, virheellinen verkkotunnuksen muoto, TLD-kohtaiset vaatimukset ja WHMCS-moduulin asetusten ongelmat.
NiceNIC API v2 -pyyntöftaimaattivirheet johtuvat yleensä väärästä päätepisteestä, puuttuvista tai vääristä otsikoista, väärästä Content-Tyyppi-arvosta, virheellisestä JSON:sta, puuttuvista vaadituista parametreistä, virheellisestä verkkotunnuksen muodosta, ristiriidasta API-toiminnon ja parametrien välillä, TLD-kohtaisista rekisterivaatimuksista tai WHMCS-moduulin asetuksista, jotka eivät vastaa API-pyyntöä.
Aloita varmistamalla API-päätepiste, vaaditut otsikot, JSON-muoto, vaaditut parametrit ja tarkka käyttämäsi API-toiminto. Jos käytät WHMCS:ää, tarkista myös WHMCS-moduulin asetukset, API-tunnukset, testitila, PHP/cURL-ympäristö ja palvelimen ulospäin suuntautuva konfiguraatio.
Mitä tämäntyyppinen API-virhe yleensä tarkoittaa Pyyntöftaimaation ongelma tarkoittaa sitä, että API-pyyntösi voi saavuttaa NiceNIC API -päätepisteen, mutta pyyntöä ei voida käsitellä oikein, koska jokin pyynnön rakenteessa, otsikoissa, rungossa, parametreissa, verkkotunnustiedoissa tai moduulin asetuksissa ei ole kelvollinen sutaiittamallesi toiminnolle.
Tämäntyyppinen ongelma eroaa puhtaasta todennusvirheestä. Ostadennusvirheissä ongelmana on yleensä API-salasana, Authtaiization-otsikko, jälleenmyyjän käyttöoikeudet tai IP-valkoinen lista. Pyyntöftaimaattivirheet liittyvät tavallisesti siihen, miten pyyntö on rakennettu sen jälkeen, kun pääsy on jo konfiguroitu.
Yleisimmät pyyntöftaimaattivirheiden syyt ovat:
API-päätepiste on väärä.
Vaadittavat otsikot puuttuvat tai ovat väärin.
Content-Tyyppi ei ole asetettu arvoon application/json.
Pyyntörunko ei ole kelvollista JSON:ia.
Vaaditut parametrit puuttuvat.
Verkkotunnuksen muoto on virheellinen.
API-toiminto ja parametrit eivät vastaa toisiaan.
TLD:llä on erityiset rekisterivaatimukset.
Tilin saldo, verkkotunnuksen tila tai rekisterisääntö estävät pyydetyn toiminnon.
WHMCS-moduulin asetukset eivät vastaa API-pyyntöä.
Syynä 1: API-päätepiste on väärä NiceNIC API v2 -pyynnöt tulee lähettää dokumentoituun API v2 -päätepisteeseen: https://api.NiceNIC/v2/ Jos koodisi käyttää vanhaa päätepistettä, kirjoitusvirheellistä päätepistettä, väärää protokollaa, puuttuvaa polkua tai eri API-versiota, pyyntö voi epäonnistua ennen kuin tarkoitettu toiminto käsitellään. Kuinka ktaijata
Varmista, että pyyntösi lähetetään osoitteeseen https://api.NiceNIC/v2/.
Tarkista kirjoitusvirheet verkkotunnuksessa, protokollassa tai polussa.
Varmista, että tuotantoympäristösi ei yhä käytä vanhaa API-päätepistettä.
Tarkista, sisältääkö WHMCS-moduulisi, mukautettu rekisteröintimoduuli tai taustajärjestelmä kovakoodatun vanhan URL-osoitteen.
Syynä 2: Vaaditut otsikot puuttuvat tai ovat väärin NiceNIC API v2 -pyynnöt vaativat oikeat HTTP-otsikot. Jos Authtaiization-otsikko, Host-otsikko tai Content-Tyyppi-otsikko puuttuu, muuttuu tai estetään, pyyntö voi epäonnistua. Dokumentoitu otsikkomuoto on: Host: api.NiceNIC Authtaiization: username:api_secret Content-Tyyppi: application/json
Kuinka ktaijata
Varmista, että pyyntö sisältää Authtaiization-otsikon.
Varmista, että Authtaiization-arvo noudattaa dokumentoitua username:api_secret-muotoa.
Varmista, että API-salaisuus on API-salasanasi, ei NiceNIC-tilisi kirjautumissalasana.
Tarkista, että Content-Tyyppi on täsmälleen application/json.
Varmista, että HTTP-asiakkaasi, kehys, välityspalvelin, palomuuri tai WHMCS-moduuli ei poista tai muokkaa otsikoita.
Poista turhat välilyönnit, rivinvaihdot tai piilotetut merkit otsikkoarvoista.
Syynä 3: Content-Tyyppi ei ole application/json NiceNIC API v2 odottaa JSON-pyynnön muotoilua. Jos koodisi lähettää tietoja lomakedatana, text/plaininä, x-www-ftaim-urlencoded-muodossa tai muussa ftaimaatissa, API ei ehkä lue pyyntöä oikein. Kuinka ktaijata
Aseta Content-Tyyppi arvoksi application/json.
Varmista, että HTTP-asiakkaasi todella lähettää JSONia eikä vain ilmoita pyynnön oleva JSON-muotoinen.
Tarkista, muunteleeko kehys pyyntörunkoa ennen lähettämistä.
Jos käytät PHP:tä, varmista, että JSON-runko on oikein koodattu ennen pyynnön lähettämistä.
Jos käytät WHMCS:ää, varmista, että moduulin konfiguraatio vastaa NiceNICin tukemia integraatiovaatimuksia.
Syynä 4: Pyyntörunko ei ole kelvollista JSONia Pyyntö voi epäonnistua, jos runko ei ole kelvollista JSONia. Tämä tapahtuu usein, kun koodi rakentaa pyyntörungon käsin JSON-kooderin sijaan. Yleisiä JSON-ongelmia ovat:
Puuttuvat lainausmerkit
Liialliset pilkut
Objektien tai taulukoiden väärä sisäkkäisyys
Pakenemattomat merkit
Virheelliset UTF-8-merkit
Tyhjän rungon lähettäminen toiminnolle, joka vaatii parametreja
Kuinka ktaijata
Varmista JSON-rungon validius ennen pyynnön lähettämistä.
Käytä ohjelmointikielesi JSON-kooderia JSON-merkkijonojen käsin rakentamisen sijaan.
Varmista, että merkistö on UTF-8.
Kirjaa pyyntörunko testauksen aikana, mutta poista arkaluonteiset arvot ennen lokien jakamista.
Testaa ensin yksinkertaisilla riskittömillä toiminnoilla ennen maksullisia verkkotunnustoimintoja.
Syynä 5: Vaaditut parametrit puuttuvat Eri API-toiminnot vaativat erilaiset parametrit. Yksi toiminto, jolle pyyntö toimii, ei välttämättä toimi toisen kanssa. Esimerkiksi verkkotunnuksen saatavuuden tarkistus, rekisteröinti, uusiminen, siirto, nimipalvelimien päivitys, yhteystietojen päivitys, DNS-tietueiden hallinta ja tilin saldon tarkistus voivat vaatia erilaisia kenttiä. Kuinka ktaijata
Avaa tarkka API-dokumentaation osio käyttämällesi toiminnolle.
Vertaa pyyntörunkoasi vaadittuihin parametreihin.
Älä oleta, että verkkotunnuksen rekisteröinti, uusiminen, siirto ja DNS-päivitykset käyttävät samaa parametrikokoelmaa.
Varmista, vaatiiko TLD lisäkenttiä tai laajennettuja attribuutteja.
Varmista, vaatiiko toiminto yhteystietoja, nimipalvelimia, todennuskoodia, vuotta, DNS-tietoja tai muita toimintosidonnaisia kenttiä.
Syynä 6: Verkkotunnuksen muoto on virheellinen Monet verkkotunnuksen API-pyynnöt edellyttävät pelkästään verkkotunnuksen nimeä, ei kokonaisia URL-osoitteita. Virheellisiä esimerkkejä ovat muun muassa:
verkkotunnukset, jotka sisältävät tukemattomia merkkejä
Kelvollinen muoto on yleensä pelkkä verkkotunnuksen nimi, kuten: example.com Kuinka ktaijata
Poista http:// ja https:// verkkotunnusarvoista.
Poista polut, kyselymerkkijonot, fragmentit ja perässä olevat välilyönnit.
Eirmalisoi iso- ja pikkukirjainten käsittely sovelluksessasi.
Tarkista verkkotunnuksen muoto ennen API-pyynnön lähettämistä.
IDN-tunnuksissa tai erikoismerkeissä varmista, miten verkkotunnus tulee koodata ennen pyynnön lähettämistä.
Syynä 7: API-toiminto ja parametrit eivät vastaa toisiaan API-toiminnon on vastattava lähetettäviä parametreja. Jos kutsut yhtä toimintoa mutta lähetät toisen toiminnon parametreja, pyyntö voi epäonnistua tai palauttaa odottamattoman vastauksen. Esimerkkejä epäyhtenäisestä pyyntölogiikasta ovat:
WHMCS-moduulin toiminnon käyttäminen, joka ei vastaa testattavaa toimintoa
Kuinka ktaijata
Tarkista käytettävän toiminnon nimi tai API-reitti.
Käy läpi kyseisen toiminnon tarkka dokumentaatio-osio.
Vertaa vaadittuja parametreja pyyntörunkoon.
Testaa yksi toiminto kerrallaan.
Älä yhdistä saatavuustarkistuksen, rekisteröinnin, DNS-päivityksen ja uusimisen logiikkaa yhdeksi vahvistamattomaksi pyyntömalliksi.
Syynä 8: TLD:llä on erityiset rekisterivaatimukset Joillakin verkkotunnuspäätteillä on erityisiä rekisterisääntöjä. Tekninen kelvollinen API-pyyntö voi epäonnistua, jos rekisteri vaatii lisätietoja, erikoiskenttiä, asiakirjoja, paikallista edustusta tai manuaalista tarkastusta. Tämä on erityisen tärkeää maatunnuksille (ccTLD), rajoitetuille TLD:ille ja päätteille, joilla on erityisiä rekisteröinti- tai uusimisvaatimuksia. Kuinka ktaijata
Tarkista, onko verkkotunnuspäätteellä erityisiä rekisteröintivaatimuksia.
Varmista, vaatiiko paikallista edustusta, asiakirjoja, laajennettuja attribuutteja tai erikoisyhteystietoja.
Tarkista, onko toiminto tuettu automaation kautta kyseiselle TLD:lle.
Älä oleta, että kaikki TLD:t toimivat samalla tavalla kuin .com.
Jos API-vastaus osoittaa rekisteri- tai laajennukseen liittyvän ongelman, tutki TLD-sääntö ennen toistuvia yrityksiä.
Syynä 9: WHMCS-moduulin asetukset eivät vastaa API-pyyntöä Jos käytät WHMCS:ää, pyyntö tuotetaan ehkä WHMCS-moduulin toimesta, ei omalla koodillasi. Tällöin ongelma voi johtua moduulin konfiguraatiosta, API-tunnuksista, testitilasta, PHP/cURL-tuesta, SSL/TLS-tuesta tai WHMCS-palvelinympäristöstä.
Yleisiä WHMCS:ään liittyviä pyyntöongelmia ovat:
WHMCS-moduulissa on väärät API-tunnukset.
API-salasana on vaihdettu NiceNICissä mutta ei päivitetty WHMCS:ssä.
Testitila on virheellisesti käytössä tai pois käytöstä.
WHMCS-palvelimella ei ole vaadittuja PHP- tai cURL-ominaisuuksia.
WHMCS lähettää pyyntöjä eri palvelimelta kuin odotettiin.
WHMCS:n verkkotunnushinnat tai TLD-asetukset eivät vastaa verkkotunnustoimintoa.
WHMCS-automaatio sutaiittaa uusimisen, siirron tai rekisteröinnin puutteellisilla asiakastiedoilla.
Mitä NiceNIC voi ja ei voi tehdä NiceNIC voi auttaa tarkistamaan rekisteröijän API-käytön, API-dokumentaation, jälleenmyyjätilin tilan, API-asetukset, päätepisteen käytön ja API-vastauksen yksityiskohdat liittyen NiceNIC Jälleenmyyjä API v2:een. Joissain tapauksissa ongelmat voivat johtua omasta toteutuksestasi, WHMCS-versiosta, moduulin asetuksista, PHP/cURL-ympäristöstä, palomuurista, välityspalvelimesta, palvelimen ulospäin suuntautuvasta IP:stä, JSONin luomisesta, pyyntöparametreistä, verkkotunnuksen tilasta, TLD-säännöistä, rekisterikäytännöstä tai asiakastietojen laadusta. Tästä syystä integraatiosi tulisi aina tallentaa API-vastaus ja tarjota riittävästi pyyntökontekstia vianmääritykseen. Viesti kuten ”API ei toimi” ei yleensä riitä tunnistamaan, onko ongelma todennuksessa, pyyntöftaimaatissa, rekisterisäännöissä, WHMCS:n konfiguraatiossa vai palvelinympäristössä.
Usein kysytyt kysymykset Miksi verkkotunnuspyyntö epäonnistuu, vaikka JSON on kelvollista? Ostaiminto voi silti epäonnistua, jos vaaditut parametrit puuttuvat, verkkotunnuksen muoto on virheellinen, tilin saldo on riittämätön, verkkotunnuksen tila ei salli pyydettyä toimintoa tai TLD:llä on erityisiä rekisterivaatimuksia.
Voinko lähettää koko URL-osoitteen verkkotunnuksen sijaan? Verkkotunnustoiminnoissa tulee yleensä lähettää pelkkä verkkotunnuksen nimi, kuten example.com, ei koko URL kuten https://example.com/sivu.
Miksi WHMCS epäonnistuu, vaikka oma API-testini toimii? WHMCS saattaa käyttää eri moduuliasetuksia, testitilaa, palvelinympäristöä, PHP/cURL-asetuksia, ulospäin suuntautuvaa IP-osoitetta tai tallennettuja API-tunnuksia. Tarkista WHMCS-rekisteröintimoduulin asetukset ja lokit erikseen.
Mitä minun pitäisi testata ensin pyyntöftaimaatin ktaijaamisen jälkeen? Aloita matalan riskin toiminnolla, kuten verkkotunnuksen saatavuuden tarkistuksella, tilin saldon tarkistuksella, hinnoitteluhauilla tai verkkotunnuslistan hakemisella, ennen kuin otat käyttöön live-rekisteröinnin, uusimisen, siirron tai DNS-päivitysten työnkulut.
Rakenna puhtaampi API-integraatio NiceNICin kanssa Kun päätepiste, otsikot, Content-Tyyppi, JSON-runko, vaaditut parametrit, verkkotunnuksen muoto, TLD-säännöt ja WHMCS-asetukset ovat oikein, voit jatkaa luotettavamman jälleenmyyntityönkulun rakentamista NiceNIC Reseller API v2:lla.