קיבלתם ג'יבריש בפרמטרים עם עברית? הנה הסיבה והפתרון
-
אם אתם עובדים עם שרת (שאינו PHP) ומקבלים את הפרמטרים עם עברית בג'יבריש כזה:
ש×\x9c×\x95×\x9dבמקום עברית תקינה — הנה הפתרון.
הסיבה:
ימות שולחים בקשות POST עם הכותרת:Content-Type: application/x-www-form-urlencodedללא ציון
charset=utf-8. רוב השרתים (ובמיוחד PHP) מסתדרים עם זה מצוין ומניחים שהקידוד UTF-8 אוטומטית — אבל שרתים מסוימים כמו Python/FastAPI מפרשים לפי התקן הישן ומקבלים ג'יבריש.הפתרון: (פייתון)
try: Param= Param.encode("latin-1").decode("utf-8") except: passלהוסיף לפני כל שימוש בפרמטר שמכיל עברית.
מקוה שאפאחד לא יסבול מזה כמה שאני הצלחתי לסבול...
@שמואל אולי באמת אפשר להוסיף את הכותרת...