tajrobe / tajrobe.github.io

https://tajrobe.github.io/
GNU General Public License v3.0
262 stars 71 forks source link

رفع مشکل Heroku #77

Closed tajrobe closed 2 years ago

tajrobe commented 2 years ago

به نظر میاد که Heroku در ISPهای مختلف ایران دارای اختلال هست یا فیلتر شده. ما برای ثبت تجربه‌های کاری Staticman رو روی Heroku دیپلوی کرده بودیم که فرم تجربه‌ی ثبت شده به سرور Staticman اسال می‌شد و Staticman اون رو push می‌کرد در ریپازیتوری.

الان دامنه‌ی Staticman ما روی خیلی از ISPها تایم اوت میده و عملا ارسال فرم به آدرسش سخت/ناممکن شده.

یه راه این هست که افراد بتونن تجربه‌ی کاری‌شون را در قالب issue بنویسن. ولی راه حل اتوماتیکی پیدا کنیم بهتر هست. برای این مشکل راه‌حلی به ذهنتون می‌رسه؟

pooooriya commented 2 years ago

سلام ببخشید من تازه دیدم اینو ، من یه راه حل بهتر دارم براش که این داستان پیش نیاد منتهی این staticman رو چه پلتفرمی بالا میاد؟ اینو باید برم داکشو بخونم ، خودم دست ب کد شدم ی چیزی زدم که بعدا برات میفرستم یه سری چیزا رو باید ازت بپرسم راجبش حتما

pooooriya commented 2 years ago

https://tajrobe.vercel.app/review/new?slug=pelak&name=%D9%BE%D9%84%D8%A7%DA%A9 من اینو نوشتم با نکست جی اس و روی ورسل گذاشتم ولی نمیشه فایل جنریت کنه چون ورسل سرور لس استوریج نداره این استتیکس من که با نود نوشتنش رو میشه روی نکست بالا اورد بزاریم رو ورسل فقط نکتش اینه فایل رو روی خودش ذخیره میکنه؟یا اندفلای میسازه و کانتربیوت میکنه روی ریپو؟

tajrobe commented 2 years ago

سلام. مرسی از زمانی که صرف این پروژه میکنی. 🌹🙏 اساس کار staticman به این صورت هست که یک Personal Access Token از اکانت گیتهاب می‌گیره و با اون توی ریپو کانتریبیوت میکنه، به طور خلاصه، فرم به سرور استاتیک‌من Post میشه و اون با توکن که بهش دادیم یه request میزنه به ریپوی گیتهاب، فایلی داخل سرورش ساخته یا نگهداری نمیشه. وجود سرور باعث محفوظ موندن اون توکن گیتهاب میشه؛ من این ارسال به گیتهاب رو، با جاوااسکریپت ساده شبیه‌سازی کردم (البته بدون validation ریکپچا) و همه چی درست بود. منتهی اشکال بزرگ server less بودن این هست که اون توکن گیتهاب (Personal Access Token) در رکوئستی که مرورگر میزنه قابل مشاهده شدن و لو رفتن هست و هر کس میتونه با داشتن اون توکن به ریپو ریکوئست بفرسته و مشکلاتی درست میشه.

در خصوص خرید سرور هم به دو دلیل گزینه‌ی مطلوب نخواهد بود، اول اینه خرید مستلزم ارائه اطلاعات حقیقی هست و شناخته شدن افراد در چنین پروژه هایی معمولا با بی‌اخلاقی‌هایی که بعضی شرکتا انجام میدن درنهایت منجر به down شدن پروژه میشه (مثل جابگای و سالپا). دوم این که اگر بخواهیم هزینه ماهیانه / سالیانه به طور مستمر ادامه داشته باشه، برای این پروژه نیازمند donation از جامعه کاربری هست که تا الان در مورد این پروژه چنین چیزی از community دیده نشده.

pooooriya commented 2 years ago

سلام ممنون از لطفت نه بحث سرورلس بودن اینه که استوریج نداریم وگرنه نکست جی اس همزمان داره یه نود جی اس ران میکنه که میتونی روش api بنویسی مشابه چیزی ک برات فرستادم پشتش یه api که yml جنریت میکنه من کدای استتیکس من رو خوندم بنظر 50 درصد میشه اون حرکتی که تو ذهنمرو باهاش روی همین ورسل بزنم نهایت تا اخر این هفته یا اون هفته نتیجه رو برات میفرستم روی همین ایشوو ک ببینی چیزی ک گفتی کاملا درسته داره ان د فلای میسازه و کامیت میزنه برای توکن و اینا چون مستقیما داره داخل سرور نود این حرکت اتفاق میوفته کسی دسترسی به هیچیش نداره در نهایت یه فرق توی سایتم بخاطرش باید انجام شه یا پاپ اپ مثل outh باز باید کنیم یا میفرستیم به ورسل اونجا من ریدایرکتش میکنم دوباره تو سایت همه اینارو خودم انجام میدم میتونم بگم تنها ترین راهمون برای انجام اینکار و دور زدن فعلی فیلتره مگر اینکه ورسل هم بخاد فیلترمون کنه که احتمالش خیلی کم بنظر میاد بخاطر استفاده گسترده ایرانیا از نکست جی اس و داکیومنتش البته بحث هویت که هویت من ک مشخصه میتونن بیان یه نون پنیر در خدمتشون باشیم :)))))) بازم ممنون ازت

pooooriya commented 2 years ago

https://github.com/pooooriya/tajrobe.github.io https://tajrobe.vercel.app/review/new?slug=pelak&name=%D9%BE%D9%84%D8%A7%DA%A9

خب مث اینکه درست شد یه تست ریز برو نتیجه رو مستقیم روی ریپو فورک شده من میبینی

pooooriya commented 2 years ago

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

tajrobe commented 2 years ago

سلام ممنون از زحمتی که کشیدی، خیلی شکیل و زیبا شده. فقط یه مشکلی من دیدم، با فایرفکس ۱۰۰ لینوکس و اینترنت مخابرات و ایرانسل صفحه‌ اصلا لود نمیشه، سرور https://tajrobe.vercel.app انگار ریسورسهاش فیلتره برای این ISPها که تست کردم. (با فیلترشکن همه چیز اوکی هست) زیانه‌ی نتورک و ببین: Screenshot from 2022-05-20 20-28-05 نمیشه فرم HTML ساده باشه (به جز فیلدهای مزایا و معایب) و فقط کار ارسال دیتا با جاوااسکریپت انجام بشه؟

به جز اون یه فیلد برای تاریخ میخواییم که فرمتش timestamp هست (length == 10).

بقیه چیزها اوکی هست. بازم ممنون از زحمتی که کشیدی 🌹🌹

pooooriya commented 2 years ago

من تست کردم با ایرانسل و ای دی اس ال درست بود همه چی ولی بازم میتونی خود ای پی اشم تست کنی دقیق اگ درست باشه صرفا وصل میشه به api جدیدمون

POST REQUEST  
https://tajrobe.vercel.app/api/tajrobe/review
body:
{
   "agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36",
"captcha_response": "03AGdBq26z1CUo7H6AIjDXmwJvobman6zdtoYx2F5-Xm77MZTpZXyf3sleANuz1Rb5340ZboX02g2T8tVpr77DToPKxvKjNhW33n3cpucShcUizomtJjT11oPffYLx8uPQE_CMfhPVbIiayTf8J5N1C7wrFitjQZU6Uy8RpXYU0e8I4wfm2lj2NtdSb7pNQa8ojCHXX8IE7A7rGR08bvmjIMlkgNKF6n6oxlH0V9dnzzf4hCMzixHyLwv6W8HbqMkbI1EQfeG8eKPPBNLomNTZXO9Dvs37Xu6h4cj7SMjdA1n6xxdj8X1OkbKddwRwsmC6hRrfNux5n_bHahbSvz_XkgU4CEz8JJP_OpAEOafkaJ3KGNWR8uhUtO_t66M1CNkUABTSW6puNSc-Rj8OTiX4MBi4wuksJqnEo95sQ0KRI5fiK1qPkOGDGh7Zb_oFS_QN3wJm7HpWMe9RKyLlM5sNBUyAdeT9mCjlAA",
"compony": "پلاک",
"cons": ["نداشتن بیمه تکمیلی", "عدم پیشرفت"],
"description": "sadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasdsadasd",
"email": "pouriya.babaali1998@gmail.com",
"job_name": "sdfsdasda",
"pros": ["بیمه", "پرداخت حقوق به موقع", "زمان کاری شناور", "محیط دوستانه", "تیم حرفه‌ای"],
"rate": 4,
"slug": "pelak",
"state": "تمام وقت"
}

اگ با این مشکلی نداشته باشی میتونیم مستقیم وصلش کنیم به همین با همون فرم قدیمی فقط باید یه سری اسم فیلدات تغییر بدی که مثل چیزی بشه که تو بادی براش میفرستی بعدشم بهش بگی اگ درست برگردوند ریدایرکتش کنه اون url که براش ساختی میتونیم ssr ریکوست بزنی مثل قبل من دستی ریدایرکتش کنم از تو سرور

tajrobe commented 2 years ago

برای تغییرات فرم قبلی من باید وقت پیدا کنم، یه مدت دیگه وقتم آزاد میشه. در حال حاضر فقط در صفحه اطلاعات هر شرکت لینک ثبت تجربه رو تغییر بدیم به https://tajrobe.vercel.app/review/new اوکی هست؟ این خط میشه که به نظرم خودت تغییرش بده 🌹 در خصوص personal access token مربوط به ریپازیتوری هم فکر کنم شما دسترسی نداری، میفرستم به ایمیلت. فقط field برای تاریخ با فرمت timestamp هم لطفا بذار

pooooriya commented 2 years ago

نیازی نیست داخل ریپو اددت کردم توی فایل .env چیزایی که میخواد گذاشته برای کپچا هم میتونی توی مسیر page/review کامپوننت reCapatcha سایت کی خودت رو بزاری اگرم نزاشتی مشکلی نداره من تغییرات رو میدم همینجا منشنت میکنم بازم سپاس گزارم

pooooriya commented 2 years ago

لطفا قبل مرج کردن تغییرات اون سمت بزن و پوش کنی مستقیم میره خودش روی ورسل آپدیت میشه بعدش اینو چک کن #85 مرسی

pooooriya commented 2 years ago

خب بنظر همه چی درست کار میکنه موردی بود این ایشوو اوپن کن یا ایشوو جدید بزن بازم مرسی بابت زحماتت بابت این ریپو جامعه تک و برنامه نویسا و کارجوها بهت مدیونن رفیق انشاله که بتونیم یه روز زحماتتو جبران کنیم 🥇 @tajrobe

tajrobe commented 2 years ago

ممنون دوست عزیزم، آقا پوریای گل 🌹 @pooooriya بالاترین ارزش این ریپو برای من، پیدا کردن افراد کار درست و با مرامی مثل شما بوده؛ خوشحالم که بواسطه‌ی این پروژه باهات آشنا شدم. ♥️