Rumah > pembangunan bahagian belakang > C++ > Mengapa Saya Mendapat Ralat '401 (Tidak Dibenarkan)' Semasa Memanggil ASP.NET WebMethod dengan jQuery AJAX?

Mengapa Saya Mendapat Ralat '401 (Tidak Dibenarkan)' Semasa Memanggil ASP.NET WebMethod dengan jQuery AJAX?

Mary-Kate Olsen
Lepaskan: 2025-01-03 06:50:46
asal
696 orang telah melayarinya

Why Am I Getting a

ASP.NET menemui "401 (Tidak Diizinkan)" semasa memanggil WebMethod dengan jQuery AJAX

Ditemui semasa memanggil WebMethod dalam ASP.NET Webform " 401 (Tidak dibenarkan)", ini adalah masalah biasa. Artikel ini akan meneroka kemungkinan punca masalah ini dan menyediakan penyelesaian.

Penyelesaian

Penyelesaian yang diberikan dalam soalan asal adalah untuk mengubah suai fail ~/App_Start/RouteConfig.cs dan menggantikan baris berikut

settings.AutoRedirectMode = RedirectMode.Permanent;
Salin selepas log masuk

Tukar kepada

settings.AutoRedirectMode = RedirectMode.Off;
Salin selepas log masuk

atau ulas baris ini. Jika URL mesra didayakan, anda juga perlu menukar baris berikut

url: "ConsultaPedidos.aspx/GetClients",
Salin selepas log masuk

kepada

url: '<%= ResolveUrl("ConsultaPedidos.aspx/GetClients") %>',
Salin selepas log masuk

Analisis

"401 (Tidak Dibenarkan )" Ralat menunjukkan bahawa pelayan tidak boleh mengesahkan permintaan pelanggan. Dalam ASP.NET, halaman WebForms menggunakan pengesahan Borang secara lalai, secara automatik mengubah hala ke halaman log masuk apabila pengguna tidak disahkan.

Tetapan.AutoRedirectMode tetapan dalam fail ~/App_Start/RouteConfig.cs menentukan cara ubah hala dikendalikan apabila URL yang diminta tidak wujud. Nilai lalai ialah RedirectMode.Permanent, yang bermaksud bahawa ubah hala ke halaman log masuk akan kekal dan URL asal tidak akan dapat diakses walaupun pelanggan disahkan. Tukar tetapan ini kepada RedirectMode.Off atau ulas baris ini untuk melumpuhkan ubah hala automatik.

Selain itu, jika URL Mesra didayakan, permintaan AJAX jQuery akan menggunakan URL relatif pelanggan (cth. "ConsultaPedidos.aspx/GetClients"). Ini menyebabkan pelayan tidak dapat menghuraikan permintaan dan mengembalikan ralat "401 (Tidak Dibenarkan)". Menukar URL relatif kepada URL mutlak menggunakan kaedah ResolveUrl boleh menyelesaikan isu ini.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat '401 (Tidak Dibenarkan)' Semasa Memanggil ASP.NET WebMethod dengan jQuery AJAX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan