Trimite cerere HTTP de la 1s la site-ul
Obiectiv: Pentru a transfera date de la 1C la site-ul. Datele vor fi trimise la scriptul PHP prin solicitare HTTP invocat de 1C.
1C este necesară pentru a contacta un terț HTTP-serviciu (în acest exemplu, scris în PHP). Schimb cu site-ul, sa decis să facă prin trecerea unui șir de caractere în format JSON.
Site-ul a postat un script PHP care primește datele, le procesează și returnează rezultatul.
Opțiunea 1: Transfer cu un antet Content-Type: application / x-www-form-urlencoded.
Apoi, face o cerere POST la from1c.php script-ul și să treacă la parametrul «param» care conține datele noastre în format JSON.
În script-ul, pentru a obține aceste date, pur și simplu a scrie echo ($ _POST [ „param“]).
Dacă transferați date în format JSON, acestea pot fi imediat automat deserializati și a obține nomalno structura. Deserializati posibil prin funcția json_decode (($ _POST [ 'param'])
Vă rugăm să rețineți că trebuie să indice „IspolzovanieByteOrderMark.NeIspolzovat“, în caz contrar vor exista probleme pe partea laterală a site-ului, cu detalii ale unui șir JSON.
Această opțiune este bună, dar aici este nevoie de un șir JSON pre-codată. deoarece poate fi caractere speciale (=, etc.). De fapt, puteți codifica un rând întreg, ca în exemplul de mai sus KodirovatStroku (StrokaJSON, SposobKodirovaniyaStroki.KodirovkaURL), dar numai anumiți parametri pot fi codificate (singurele unde pot fi simbolurile).
Opțiunea 2: Transferul cu un antet Content-Type: application / json.
În acest exemplu de realizare, linia precode nu este necesară.
Primirea de date de pe partea laterală a site-ului, pur și simplu prin echo ($ _ [ „comanda“] POST) eșuează. Trebuie să utilizați file_get_contents echo ( 'php: // input')
Asta e tot.
De exemplu, prelucrarea atașat în care structura este serializate în JSON și transmiterea către serverul de cele două exemple de realizare.