رفتن به مطلب

کتابخانه Persian_okHttp


محمدرضا شاهپیری

ارسال‌های توصیه شده

به نام خدا

همونجوری که میدونید کتابخونه های okhttp و httputils2 که توی بیسیک موجوده یه سری ایرادات و مشکلات داره و گزینه خوبی برای ارتباط با سرور نیستن.

به همین دلیل کتابخونه Persian_okHttp رو برای دوستان آماده کردیم که از لینک (The Android Arsenal - Networking - Android Http Client) رپ شده. 

فعلا توی این ورژن همه درخواستهای ممکن رو میتونید به سرور بفرستید و به صورت استرینگ و جیسون رسپانس بگیرید

یه نکته در مورد رسپانس جیسون بگم اینکه خروجی به صورت استرینگ هست یعنی جیسون رو به صورت استرینگ برمیگردونیم و با استفاده از کتابخونه قدرتمند persian_json اونو پارس کنید و استفاده کنید

مثال و نحوه استفاده.

Dim pohtp As Persian_okHttp
Dim ULR As String="http://folan.php"

......................................................
pohtp.initialize(ULR,"p")
......................................................................
pohtp.addParameter("p1","0")
pohtp.addParameter("p2",8)
pohtp.addParameter("p3",true)

....................................................................
pohtp.Method=pohtp.Post
pohtp.Method=pohtp.GET
.......................................................

pohtp.withStringResponseListener
pohtp.withJsonResponseListener
.............................................

pohtp.execut

رسپانسها هم به صورت زیر هستن. دقت کنید با نوشتن  sub و زدن کلید tab میتونید همه رسپانسها رو ببینید

Sub p_onJsonErrorResponse(Response As String)
	Log(Response)
End Sub

Sub p_onJsonoKResponse(Response As String)
	Dim pjs As P_JsonOBject
	pjs.initialaizJsonString(Response)
	ToastMessageShow(pjs.getString("key"),False)
End Sub
Sub P_onJsonParsError(parseror As String)
	Log(parseror)
End Sub
Sub p_onStringoKResponse(Response As String)
	Log(Response)
End Sub
Sub p_onStringErrorResponse(Response As String)
	Log(Response)
	End Sub

امیدوارم کتابخونه مفید باشه واسه دوستان

Persian_okHttp

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بسیار بسیار حرکت زیبا و عالی کردید که در دسترس عموم قراردادید.

ممنونم از زحماتتون.

 

 

یه نکته آیا اگه اکتیویتی بسته بشه و در عمل رویداد کنسل بشه دوباره اکتیویتی رو نمایش میده یا نه کلاً کنسل شده ؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ممنونم انجام وظیفه اس.

خیر عزیز کلا کنسل میشه.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

درود محمدرضا جان :53:

ممنون بابت زحمات بی نهایت.:give_rose:♥

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 3 دقیقه قبل، مجید آرتا گفته است :

درود محمدرضا جان :53:

ممنون بابت زحمات بی نهایت.:give_rose:♥

چاکرم حاجی. ای کاش وقت یاری میکرد همه امکاناتشو اضافه میکردم. ولی امان از مشکلات:shok:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ویژگی آپدیت برای همین اهم هستش.
ایشالا با تست و دیباگ ما و نظر دوستان ورژن های بعدی رو بهبودبافته تر بسازید اگر زمان بیشتر آزاد داشته باشید.

 

هم اکنون کمی ساخت و ارسال درخواست کندتر از OKHTTP هستش بخاطر جدا شدن ست کردن مقادیر.

برترین نمونه ای که میتونم براتون نمایان کنم کتابخانه ارزشمند AriaGlide هستش که همه خواص درخواست رو در همون یک خط میگیره و انجام میده.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

این رو هم انشالا تو ورژن بعد لحاظ میکنم که با یه خط بتونید اینشیالایز کنید و متد بدیدو ... و در آخر ارسال کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

دوستای خوبم خیلی خیلی کتابخونه عالی هستش و واقعاً کارکردش رو دوست دارم

مزایا :

- اتصال به لینک حتی با ضعیفترین اینترنت ممکن ( همین الان من کله برنامه های آنلاینی که تا الان ساختم با اینترنت E خطای عدم اتصال به اینترنت دریافت میکردم که به لطف وجود این کتابخونه الان این مشکل حل شده )

- خروجی JSON آماده

- سرعت بسیار بالا

 

ولی

ولی

ولی یه باگ کوچولو و اذیت کننده :

زمانی که اینترنت قطع باشه و یا اصلاً روی گوشی روشن نباشه رویدادهای زیر کارشون رو انجام نمیدن و ارور نمیدن

onJsonErrorResponse

onStringErrorResponse

 

راستی دوستان خبری از آقای ایزدی نیست نگران حالشون هستیم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 5 ساعت قبل، mohammad-alone گفته است :

دوستای خوبم خیلی خیلی کتابخونه عالی هستش و واقعاً کارکردش رو دوست دارم

مزایا :

- اتصال به لینک حتی با ضعیفترین اینترنت ممکن ( همین الان من کله برنامه های آنلاینی که تا الان ساختم با اینترنت E خطای عدم اتصال به اینترنت دریافت میکردم که به لطف وجود این کتابخونه الان این مشکل حل شده )

- خروجی JSON آماده

- سرعت بسیار بالا

 

ولی

ولی

ولی یه باگ کوچولو و اذیت کننده :

رویدادهای زیر کارشون رو انجام نمیدن

onJsonErrorResponse

onStringErrorResponse

 

راستی دوستان خبری از آقای ایزدی نیست نگران حالشون هستیم.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خوب دوستان یه کوچولو تابع نوشتم که میتونید مقادیر رو توی اون ست کنید.

امیدوارم که بدرد دوستان بخوره

 

Sub SendRequest(Dim htReq As Persian_okHttp,EventName As String,PHPName As String,Parameter As String)
	Dim a() As String=Regex.Split("&",Parameter)
	htReq.initialize(URL,EventName)
	For s=0 To a.Length-1
		Dim Para() As String=Regex.Split("=",a(s))
		htReq.addParameter(Para(0),Para(1))
	Next
	htReq.Method=htReq.Post
	htReq.withStringResponseListener
	htReq.execut
End Sub

 

روش استفاده :

SendRequest (ht , "EventName","URL","A=12&B=12,C=12")



Sub EventName_onStringoKResponse(Response As String)
	'CodeHaye Parse Kardan Response
End Sub


Sub EventName_onStringErrorResponse(Response As String)
	'CodeHaye Error Va Hamchenin Parse Kardan Response
End Sub

 

موفق تر باشید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

pohtp.addParameter("p1","0")
pohtp.addParameter("p2",8)
pohtp.addParameter("p3",true)

اگه بخواهیم چند تا لینک بخونیم باید به چه شکلی عمل کرد/

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

متوجه منظورت نشدم. بیشتر توضیح بدین ببینم چی مد نظرتونه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

منظورم اینه که نیاز دارم تو برنامه دو تا لینک بخونم  دو تا url اونجا که میخوام بگیرمش نمیدونم چی جوری تفکیکش کنم چون توابع  فقط یک ورودی داره

ممنون توضیح بدی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

باید جداگونه تعریف کنید با ایونت نیم های متفاوت.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سرعت پایین نمیاد؟خودم اینکارو کردم اما فکر کردم منطقی نباشه

اگه  دو ورودی داشت    مثلا لینک و یک عدد مربوطه داشت میشد تو همون یک ایونت کارکرد

اما اگر بعنوان سازنده کتابخونه مشکلی پیش نمیاد من انجام بدم چون دارم تو یه پروژه کاری برای یک شرکت انجام میدم

ممنون راهنمایی کنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

عزیز توی خود کتابخونه اصلی همچین امکانی نداره که درخواستها رو  تفکیک کرد. شما فعلا از این روش استفاده کنید تا بررسیش کنم ببینم میشه راههای بهتری واسش پیداکرد یا نه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ممنون از پاسخگویی  در httpjob   خب من jobname دارم و توی یک رویداد میتونم براحتی با jobname تفکیک کنم

pohtp.addParameter("p1","0")

این خط بالا کاربردش چیه؟ ممنون

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 18 دقیقه قبل، shahrokhnazari گفته است :

 


pohtp.addParameter("p1","0")

این خط بالا کاربردش چیه؟ ممنون

مشخصه که. فیلدهایی که میخواین به سرور بفرستین.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ممنون البته فکر نکنم نیازی باشه اینو میشه با همون url فرستاد هرچی میخوای به سرور بفرستی...

کتابخونه عالیه سرعتش خوبه اما این که باید تو تا ایونت تعریف کنم باهاش کنار نمیام....همون دو تا ایونت هم سرعتش عالیه....نظر خاصی ندارید؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 3 ماه بعد...
در در 1396/06/17, 00:28:14، [email protected] گفته است :

سلام لطفا این کتابخانه رو پیوست کنید 

 

P_JsonOBject

سلام

برادر عزیز اگه یه ذره متنی که اقای شاهپیری نوشتن رو با دقت بخونید، دارن اشاره می کنن کتابخونه Persian_Json  رو باید داشته باشید. :fekr:

لینک تاپیک کتابخونه رو هم واستون قرار دادن، مشکل کجاست ؟؟؟

کتابخونه رو باید خریداری کنید.

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...