سرور JSON

یکی از کاربردهای رایج JSON تبادل داده‌ها با سرور وب است.

وقتی داده‌ها را از سرور وب دریافت می‌کنید، داده‌ها همیشه رشته هستند.

با JSON.parse() داده‌ها را تحلیل کنید، داده‌ها به شیء JavaScript تبدیل خواهند شد.

داده‌ها را ارسال کنید

اگر داده‌ها را در شیء JavaScript ذخیره کنید، می‌توانید آن‌ها را به JSON تبدیل کرده و به سرور ارسال کنید:

مثال

const myObj = {name: "Bill", age: 31, city: "New York"};
const myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;

آزمایش کنید

داده‌ها را دریافت کنید

اگر داده‌های JSON دریافت کنید، می‌توانید به راحتی آن‌ها را به شیء JavaScript تبدیل کنید:

مثال

const myJSON = '{"name":"Bill", "age":31, "city":"New York"}';
const myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;

آزمایش کنید

JSON از سرور

می‌توانید درخواست AJAX برای دریافت JSON از سرور ارسال کنید

هر زمان که پاسخ سرور به فرمت JSON نوشته شده باشد، می‌توانید رشته را به شیء JavaScript تبدیل کنید.

مثال

از طریق XMLHttpRequest داده‌ها را از سرور دریافت کنید:

const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myObj = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myObj.name;
};
xmlhttp.open("GET", "json.txt");
xmlhttp.send();

آزمایش کنید

لطفاً به: مراجعه کنیدjson.txt

JSON به صورت آرایه

در JSON مستخرج شده از آرایه استفاده کنید JSON.parse() در صورت استفاده از JSON مستخرج شده از آرایه، این روش آرایه JavaScript را بازمی‌گرداند، نه شیء JavaScript.

مثال

JSON به صورت آرایه از سرور بازمی‌گردد:

const xmlhttp = new XMLHttpRequest();
xmlhttp.onload = function() {
  const myArr = JSON.parse(this.responseText);
  document.getElementById("demo").innerHTML = myArr[0];
  }
}
xmlhttp.open("GET", "json_array.txt", true);
xmlhttp.send();

آزمایش کنید

لطفاً به: مراجعه کنیدjson_array.txt