You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
function handleFcmError(error, token) {
switch (error.code) {
case 'messaging/invalid-registration-token':
console.warn(Token ${token} is invalid. Please check the token format.);
break;
case 'messaging/registration-token-not-registered':
console.warn(Token ${token} is not registered. Consider removing it.);
break;
case 'messaging/mismatched-credential':
console.warn(Token ${token} mismatch with sender ID. Check your project configuration.);
break;
default:
console.warn(FCM error for token ${token}: ${error.message});
break;
}
}
// استفاده از تابع برای ارسال پیام
const token = 'FCM_DEVICE_TOKEN';
const message = {
title: 'Test Notification',
body: 'This is a test message sent using Firebase Admin SDK.',
data: {
key1: 'value1',
key2: 'value2'
}
};
برای تبدیل تمامی آیتمها و آرایهها داخل یک آبجکت به رشته در جاوااسکریپت، میتوانید از یک تابع بازگشتی استفاده کنید که به صورت عمیق (deep) تمامی آیتمهای داخل آبجکت و آرایه را بررسی کرده و به رشته تبدیل میکند. در ادامه یک نمونه کد برای این کار آورده شده است:
functiondeepConvertToString(obj){// اگر آیتم یک آرایه باشد، آن را به صورت جداگانه پردازش کنif(Array.isArray(obj)){returnobj.map(item=>deepConvertToString(item));}// اگر آیتم یک آبجکت باشد، به صورت بازگشتی تمامی کلیدها را پردازش کنelseif(typeofobj==='object'&&obj!==null){constresult={};for(letkeyinobj){if(obj.hasOwnProperty(key)){result[key]=deepConvertToString(obj[key]);}}returnresult;}// اگر آیتم غیر از آبجکت یا آرایه باشد، آن را به رشته تبدیل کنreturnString(obj);}// نمونه آبجکت برای تستconstcomplexObject={name: "John",age: 30,isActive: true,scores: [10,20,30],address: {city: "New York",postalCode: 10001,coords: {lat: 40.7128,long: -74.0060}}};conststringifiedObject=deepConvertToString(complexObject);console.log(stringifiedObject);
توضیح کد:
تابع deepConvertToString: این تابع به صورت بازگشتی روی آبجکتها و آرایهها عمل میکند. اگر آیتم یک آرایه باشد، هر عنصر آرایه را پردازش میکند. اگر آیتم یک آبجکت باشد، تمامی کلیدها و مقادیر آن را پردازش کرده و به رشته تبدیل میکند.
تبدیل مقادیر به رشته: برای هر نوع دادهای که غیر از آبجکت یا آرایه است (مثل اعداد، بولینها، و غیره)، از String() استفاده میکنیم تا به رشته تبدیل شود.
استفاده از تابع: در نهایت، تابع deepConvertToString روی آبجکت اصلی اعمال میشود و نتیجه نهایی که شامل تمامی مقادیر به صورت رشته است، چاپ میشود.
نتیجه:
پس از اجرای کد، آبجکت complexObject به یک آبجکت جدید تبدیل میشود که تمامی مقادیر آن به رشته تبدیل شدهاند. این روش برای آبجکتهای پیچیده که شامل تو در تویی از آبجکتها و آرایهها هستند نیز به خوبی کار میکند.
Activity
m2faridi commentedon Sep 3, 2024
const admin = require('firebase-admin');
// مقداردهی اولیه در مرحله قبلی انجام شد
function sendFcmMessage(token, message) {
const payload = {
notification: {
title: message.title,
body: message.body,
},
data: message.data,
};
}
function handleFcmError(error, token) {
switch (error.code) {
case 'messaging/invalid-registration-token':
console.warn(
Token ${token} is invalid. Please check the token format.);break;
case 'messaging/registration-token-not-registered':
console.warn(
Token ${token} is not registered. Consider removing it.);break;
case 'messaging/mismatched-credential':
console.warn(
Token ${token} mismatch with sender ID. Check your project configuration.);break;
default:
console.warn(
FCM error for token ${token}: ${error.message});break;
}
}
// استفاده از تابع برای ارسال پیام
const token = 'FCM_DEVICE_TOKEN';
const message = {
title: 'Test Notification',
body: 'This is a test message sent using Firebase Admin SDK.',
data: {
key1: 'value1',
key2: 'value2'
}
};
sendFcmMessage(token, message);
m2faridi commentedon Sep 3, 2024
برای تبدیل تمامی آیتمها و آرایهها داخل یک آبجکت به رشته در جاوااسکریپت، میتوانید از یک تابع بازگشتی استفاده کنید که به صورت عمیق (deep) تمامی آیتمهای داخل آبجکت و آرایه را بررسی کرده و به رشته تبدیل میکند. در ادامه یک نمونه کد برای این کار آورده شده است:
توضیح کد:
تابع
deepConvertToString: این تابع به صورت بازگشتی روی آبجکتها و آرایهها عمل میکند. اگر آیتم یک آرایه باشد، هر عنصر آرایه را پردازش میکند. اگر آیتم یک آبجکت باشد، تمامی کلیدها و مقادیر آن را پردازش کرده و به رشته تبدیل میکند.تبدیل مقادیر به رشته: برای هر نوع دادهای که غیر از آبجکت یا آرایه است (مثل اعداد، بولینها، و غیره)، از
String()استفاده میکنیم تا به رشته تبدیل شود.استفاده از تابع: در نهایت، تابع
deepConvertToStringروی آبجکت اصلی اعمال میشود و نتیجه نهایی که شامل تمامی مقادیر به صورت رشته است، چاپ میشود.نتیجه:
پس از اجرای کد، آبجکت
complexObjectبه یک آبجکت جدید تبدیل میشود که تمامی مقادیر آن به رشته تبدیل شدهاند. این روش برای آبجکتهای پیچیده که شامل تو در تویی از آبجکتها و آرایهها هستند نیز به خوبی کار میکند.m2faridi commentedon Sep 4, 2024
https://fxtrendo.com/fa/blog/1135/%D8%AA%D8%B1%D9%86%D8%AF%D9%88-%D8%AF%D8%B1-%D8%A7%DA%A9%D8%B3%D9%BE%D9%88-%D8%AF%D8%A8%DB%8C-%DB%B2%DB%B0%DB%B2%DB%B4