انجمن سایت کلیدستان



مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)زمان کنونی: ۱۳۹۵/۰۹/۱۵، ۱۲:۵۴ ب.ظ
کاربران در حال بازدید این موضوع: 1 مهمان
نویسنده: hseify69@gmail.com
آخرین ارسال: hseify69@gmail.com
پاسخ 4
بازدید 656

رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)

مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)

#1
سلام دوستان امیدوارم حالتون خوب باشه.
من در حال نوشتن یه app هستم که یه بخشیش باید یه عکس و یه سری رشته فارسی و انگلیسی رو به سرور ارسال کنم.
من برای این کار اومدم از httpURLconnection استفاده کردم.
ارسال عکس با موفقیت انجام میشه
ارسال رشته های انگلیسی و حتی شماره تلفن که رشته با محتوای عدد هست هم درست ارسال میشه
اما رشته های فارسی مثل نام و توضیحات و آدرس بعد از ارسال تو سرور به کاراکتر های نامفهوم تبدیل میشن
مثلا عبارت "طراحی سایت و نرم افزار اندروید" رو به "71'-" تبدیل می کنه
یا تو آدرس "تهران خیابان شریعتی" رو به "*G1'F" تبدیل می کنه


الان مشکل کجاست؟
آیا من باید موقع ارسال پارمتر ها کاری کنم یا اینکه بعد از دریافت تو سرور باید کاری کنم؟
مثلا من با کد زیر دارم اسم رو واسه سرور می فرستم:

کد پی‌اچ‌پی:
String onvan "حامد سیفی";
                dos.writeBytes("Content-Disposition: form-data; name=\"onvan\""
                        lineEnd);
                dos.writeBytes("Content-Type: text/plain; charset=UTF-8"
                        lineEnd);
                dos.writeBytes("Content-Transfer-Encoding: 8bit" lineEnd);
                dos.writeBytes(lineEnd);
                dos.writeBytes(onvan);
                dos.writeBytes(lineEnd); 

این هم کدای راه اندازی کتابخونم هست (httpURLconnection) :

کد پی‌اچ‌پی:
conn = (HttpURLConnectionurl.openConnection();
                conn.setDoInput(true); // Allow Inputs
                conn.setDoOutput(true); // Allow Outputs
                conn.setUseCaches(false); // Don't use a Cached Copy
                conn.setRequestMethod("POST");
                conn.setRequestProperty("Connection""Keep-Alive");
                conn.setRequestProperty("charset""UTF-8");
                // conn.setRequestProperty("ENCTYPE", "multipart/form-data");
                conn.setRequestProperty("Content-Type",
                        "multipart/form-data;boundary=" boundary); 

ممنون میشم کمکم کنید
پاسخ

مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)

#2
تو نت دنبال کدی تحت عنوان encodeHtml بگرد یه متد هس دانلود کن اضافه کن به برنامت هرجا که خواسی متنی ارسال کنی فارغ از نوع ابتدا encode کن و سپس بفرس ایشالا که جواب میگیری
اگه از این روش استفاده کنی از سمت سرور هم باید متنتو  decode کنی
پاسخ
 سپاس شده توسط admin ، داش بهروز

مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)

#3
(۱۳۹۴/۰۷/۲۳, ۰۳:۰۹ ب.ظ)'u3fraja' نوشته: تو نت دنبال کدی تحت عنوان encodeHtml بگرد یه متد هس دانلود کن اضافه کن به برنامت هرجا که خواسی متنی ارسال کنی فارغ از نوع ابتدا encode کن و سپس بفرس ایشالا که جواب میگیری
اگه از این روش استفاده کنی از سمت سرور هم باید متنتو  decode کنی

 

سلام
لطفا بیشتر راهنمایی کن برادر آخه هر چی میگردم چیزی پیدا نمی کنم
خودت نداریش بهم بدی؟

 
پاسخ

مشکل در ارسال رشته های فارسی به سرور با httpURLconnection (اندروید)

#4
مشکل حل شد دوستان.
موقع ارسال رشته اول با base64 اینکدش می کنم و بعد در کد پی اچ پی سمت سرور دیکدش می کنم و استفاده می کنم. به همین راحتی
ممنون از کمکی که کردین.
دوستون دارم
پاسخ
 سپاس شده توسط admin


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

آخرین کلیدهای غیررایگان

شما هم می توانید کلیدهای غیررایگان منتشر کنید (بیشتر بدانید)