نمایش نتایج 1 تا 7 از 7

نام تاپیک: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

  1. #1

    Question برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    سلام دوستان
    ممنون میشم تجربیات خود از استفاده middleware در AspCore را اشتراک بگذارید...

    ممنون

  2. #2

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

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

  3. #3

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    منظورتون مواردی هست که برنامه نویس برای انجام کارهاش بصورت سفارشی نوشته یا middleware های آماده که از nugget نصب میشه ؟

  4. #4

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    middleware یک کامپوننت هست و به نوعی بر سر راه درخواست های کاربر قرار می گیرد و می تواند به در خواست ها و پاسخ ها دستوراتی را اضافه کند .
    و 4 مدل هم می تواند داشته باشد : Content Generating , short circuiting , request editing , response editing
    جدای از بحث معرفی middleware میخام توضیح بدید در پروژه هایی ک استفاده کردید برای انجام چه کارهایی از middleware استفاده کردید . به اشتراک بگذارید اون تسک رو
    مثلا کنترل ip کاربر یا دیگه چی ؟ شما چه تسک هایی رو در پروژه ها انجام دادید.....

  5. #5

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    من بصورت عملی انجام ندادم ، چون در اصل نمی تونم چطور پیاده سازی کنم و الان به این مباحث نیاز دارم .. اگر حوصله داشته باشین ممنون میشم در این زمنیه از شما کمک بگیرم
    اما مواردی که نیاز دارم :

    1- جايگزين كردن حرفهای ي و ك با ی و ک صحیح در خط فارسی (( مثلا در تمام پارامترهایی که family هست ) این اتفاق بیفته

    2- بررسی توکن هایی که منقضی شدن ( من هر توکنی که خروج بزنه داخل یه جدول تو دیتابیس ) ذخیره کردم ، بعد تو هر کنترلی که از سمت کاربر درخواست میشه
    کد نوشتم که بررسی کن این توکن جزو توکن های Expire شده هست یا خیر

    مورد سوم هم همون IP کاربر هست که خودتون اشاره کردین ، به این سه مورد برای پروژه ام شدید نیاز دارم

  6. #6
    کاربر دائمی آواتار hamzehsh
    تاریخ عضویت
    مرداد 1385
    محل زندگی
    https://samanhis.ir
    سن
    42
    پست
    166

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    سلام برای اصلاح حروف فارسی و عربی https://barnamenevis.org/showthread....1-ASP-NET-Core

    نگهداری توکن های منقضی شده کاربردش چیه؟

    ip های کاربران رو واقعا نمیشه به دست اورد. خیلی چیزها توی این موارد تاثیر گذاره.
    مثل فایروالها یا فیلتر ش*ک*ن و .....

    تجبریباتتون رو بگذارید همه با هم به نتیجه برسیم

    در مورد میان افزار من یک میان افزار بر اساس خیلی از آموزشهای دنیای وب نوشتم که بتونم خطاهای api ها رو مدیریت کنم
    توضیحاتش رو هم نوشتم که قابل استفاده باشه


    /// <summary>
    /// میان افزار مدیریت خطاها
    /// </summary>
    public static class CustomExceptionHandlerMiddlewareExtentions
    {
    public static IApplicationBuilder UseCustomExceptionHandler(this IApplicationBuilder builder)
    {
    return builder.UseMiddleware<CustomExceptionHandlerMiddle ware>();
    }
    }


    /// <summary>
    /// میان افزار مدیریت خطاها
    /// </summary>
    public class CustomExceptionHandlerMiddleware
    {
    private readonly RequestDelegate _next;
    private readonly IWebHostEnvironment _evn;
    /// <summary>
    /// میان افزارها به ترتیب یکدیگر را صدا میزنند
    /// در زمان صدا زدن باید میان افزار بعدی را صدا بزنیم
    /// پس از RequestDelegate برای صدا زدن بعدی استفاده میکنیم.
    /// در واقع یک درخواست باید از تمام میان افزارها عبور کند تا نتیجه را بازگشت بدهد
    /// </summary>
    /// <param name="next"></param>
    /// <param name="evn"></param>
    public CustomExceptionHandlerMiddleware(RequestDelegate next, IWebHostEnvironment evn)
    {
    _next = next;
    _evn = evn;
    }


    public async Task Invoke(HttpContext context)
    {
    List<string> Message = new List<string>();
    HttpStatusCode httpStatusCode = HttpStatusCode.InternalServerError;
    ApiResultStatusCode apiResultStatus = ApiResultStatusCode.ServerError;


    // درصورت آمدن به این قطعه کد یعنی درخواست مشکی نداشته است.
    // پس به سراغ متد بعدی میرود
    try
    {
    await _next(context);
    }


    // در صورت بروز خطا این خطا با فرمت مورد نظر ما بازگشت داده میشود.
    catch (AppException exception)
    {
    httpStatusCode = exception.HttpStatusCode;
    apiResultStatus = exception.ApiStatusCode;


    if (_evn.IsDevelopment())
    {
    var dic = new Dictionary<string, string>
    {
    ["Exception"] = exception.Message,
    ["StackTrace"] = exception.StackTrace,
    };
    if (exception.InnerException != null)
    {
    dic.Add("InnerException.Exception", exception.InnerException.Message);
    dic.Add("InnerException.StackTrace", exception.InnerException.StackTrace);
    }



    if (exception.AdditionalData != null)
    dic.Add("AdditionalData", JsonConvert.SerializeObject(exception.AdditionalDa ta));

    Message.Add(JsonConvert.SerializeObject(dic));
    }
    else
    {
    Message.Add("خطایی رخ داده است.");
    }
    await WriteToResponseAsync();


    }


    catch (Exception exception)
    {
    if(_evn.IsDevelopment())
    {
    var error = new Dictionary<string, string>
    {
    ["Exception"] = exception.Message,
    ["StackTrace"] = exception.StackTrace,
    };
    Message.Add(JsonConvert.SerializeObject(error));
    }


    else
    {
    Message.Add("خطایی رخ داده است.");
    }


    await WriteToResponseAsync();
    }


    async Task WriteToResponseAsync()
    {
    // چون خطا رخ داده پس مقدار issucced == false
    //
    var result = new ApiResult(false, apiResultStatus, Message);
    // خطاهای موجود در این دیکشنری به همراه جزئیات خطا را به فرمت
    // json تبدیل کرده و بازگشت میدهیم.
    var jsonResult = JsonConvert.SerializeObject(result);


    context.Response.StatusCode = (int)httpStatusCode;
    context.Response.ContentType = "application/json";


    await context.Response.WriteAsync(jsonResult);
    }
    }

  7. #7

    نقل قول: برای انجام چه کارهایی از MIDDLE WARE استفاده می کنید ؟

    سلام

    ممنون بابت توضیحاتتون اما همچنان من دقیقا متوجه نشدم چطور بایدپیاده سازی کنم ، شاید چون بعضی از مفاهیم رو بلد نیستم..


    **
    من برای پیاده سازی JWT از یک مقاله سایت خارجی استفاده کردم اما چند تا مشکل داشت : خیلی راحت دیکود می شد ، هیچی راهی برای رفرش کردن توکن هایی که
    به ازای هر شماره موبایل تولید می شد پیدا نکردم ، برا همین اومدم توکن هایی که خروج می زنن داخل دیتابیس ذخیره کردم و داخل هر کنترلر چک می کنم که آیا این توکن
    قبلا خروج زده یا خیر

تاپیک های مشابه

  1. سوال: مقابله با حمله man in the middle
    نوشته شده توسط negative60 در بخش تالار های مرتبط با شبکه و امنیت
    پاسخ: 1
    آخرین پست: دوشنبه 05 بهمن 1394, 21:34 عصر
  2. middle ware برای ثبت هر کاری که در سیستم انجام میشه ؟
    نوشته شده توسط malihehshajari در بخش دیگر زبان های اسکریپتی
    پاسخ: 4
    آخرین پست: سه شنبه 13 اسفند 1392, 16:48 عصر
  3. سوال: نحوه استفاده از middle ماوس
    نوشته شده توسط h_a_m_i_d در بخش VB.NET
    پاسخ: 2
    آخرین پست: شنبه 04 خرداد 1392, 14:28 عصر
  4. مشکل نصب در vm ware
    نوشته شده توسط el.karimi.se در بخش توسعه‌ی لینوکس و نرم افزارهای آزاد
    پاسخ: 2
    آخرین پست: سه شنبه 25 اسفند 1388, 14:12 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •