Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 20667|Jawab: 0

[ASP.NET] GET meminta "HTTP Error 400. URL permintaan tidak valid"

[Salin tautan]
Diposting pada 04/07/2018 09.53.58 | | | |


Melihat informasi yang salah ini, rata-rata pengembang mungkin menebak dua alasan

1. Ada karakter khusus di tautan

2. Panjang tautan terlalu panjang(Sepertinya panjangnya bukan kesalahannya, itu samar-samar, saya lupa)

Alamat gambar kesalahan adalah sebagai berikut: http://{host}/SearchService. svc/rest/pic600x320/png/kv3hcxmnCmISVvFKojNBGpkN44MRx71vV4v7Qu7ikclbic2vX5Axnm8RxwhLoWyehsSz4J%C2% A72F6h4eQgvkrbzuKGR6y7sszK1KUY75RqxylZMumapwVQttfllaSPXwoRGEeVexDqjmMZSERPquL3uLZbv6Vxdx52nRDUW90SVVYeqkHZbx2w3T1coqt2v036tfaZ%C2%A72D8GBlPbIVJuhSFU5GA8116z8FkV4%C2% A72kDtsxSXy9XTFIziTToRpbQEkp7497O6q99

Selanjutnya, kami mulai menyelidiki alasan kesalahan yang mungkin kami temui

1. Periksa URL, tidak ada karakter khusus (kecualikan alasan ini)

2. URL terlihat sangat panjang pada pandangan pertama, jadi mari kita hapus setengah panjang parameter dan kemudian memintanya. Hasilnya adalah bisa berhasil, dan kemudian dengan terus-menerus menambahkan karakter, ditemukan bahwa panjangnya melebihi 339 dan melaporkan kesalahan ini, dan tidak ada karakter khusus setelah 339, jadiKami pada dasarnya menentukan bahwa penyebab kesalahan adalah karena URL terlalu panjang

Langkah selanjutnya adalah memecahkan masalah yang relevan

Kemudian ada berbagai Baidu, periksa konfigurasi yang terkait dengan memodifikasi batas panjang querystring

Kemudian ubah web.config

1. Ubah konfigurasi maxQueryStringLength dan maxRequestLength di bawah simpul httpRuntime

2. Ubah simpul system.webServer sebagai berikut

Menyimpan dan menjalankan dengan antisipasi, kesalahannya masih sama, dan sepertinya tidak ada gunanya

Pada saat ini, saya mulai bertanya-tanya, mengapa tidak, apakah itu tidak akan berlaku, berpikir bahwa mungkin ada banyak orang seperti saya, memikirkan pengaturan global IIS, apakah pengaturan ini tidak akan ditimpa, kami masih menggunakan semua nilai yang ditetapkan

Jangan menebak, periksa saja (perhatikan bahwa requestFiltering yang Anda periksa terletak di bawah system.webServer, jangan melihat node yang salah)

Jika nonaktif, nilai overrideModeDefault adalah Tolak, yang berarti konfigurasi kita akan didasarkan pada konfigurasi spesifik situs kita.

Jadi semuanya normal, mengapa itu kesalahan ?!

Akhirnya, pengembalian yang tidak diadopsi di stackoverflow menarik perhatian saya

tautanhttps://stackoverflow.com/questi ... is-invalid-in-iis-7



Secara kasar, permintaan tersebut belum mencapai IIS dan dimatikan oleh sistem operasi.

Pada saat ini, saya mencari artikel lain di Google, yang terhubung ke dukungan teknis radio optik Microsoft

Alamatnya adalah sebagai berikuthttps://support.microsoft.com/zh ... ettings-for-windows

Inti dari kedua artikel tersebut adalah bahwa kita perlu memodifikasi registri, dan kedua artikel tersebut mungkin dimodifikasi oleh dua nilai registri berikut



Selanjutnya, coba dan buka registri CMD="regedit="HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

Klik kanan pada area kosong dan pilih nilai Dword, seperti yang ditunjukkan pada gambar



Buat nama baru yang disebut UrlSegmentMaxLength, atur nilainya ke 2048, dan klik OK



Pengaturan UrlSegmentMaxCount sama seperti di atas, nilainya juga Dword 2048, klik OK.

Modifikasi hanya dapat diterapkan jika layanan HTTP dimulai ulang

  • Klik Mulai, ketik Cmd, lalu klik OK.
  • Pada prompt perintah, ketik net stop http dan tekan Enter.
  • Pada prompt perintah, ketik net start http dan tekan Enter.


Kemudian mulai ulang IIS. Coba lagi, oke, tidak ada kesalahan, solusi sempurna





Mantan:Jenis "Objek" didefinisikan dalam rakitan yang tidak direferensikan. Harus menambahkan respons ke program...
Depan:Praktik Aplikasi Android Pengembangan Ionik (4): Pemosisian API Peta Baidu
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com