2009-10-12 10 views
0

Je suis Server.UrlEncode sur certains paramètres de chaîne de requête et localement c'est bien mais sur mon serveur (IIS 7) il provoque une erreur de demande incorrecte. J'utilise ASP.Net MVC.'+' provoquant une mauvaise demande dans les URLs

Si je modifie manuellement le signe + sur un tiret, la requête fonctionne correctement.

Ce casse:

http://www.example.com/Glenn+Pang/234 

Cela fonctionne:

http://www.example.com/Glenn-Pang/234 

Est-ce un paramètre que je suis absent dans IIS 7?

+0

Puisque vous demandez spécifiquement à propos de IIS 7 plutôt que sur 'UrlEncode' ou quelque chose de ce genre, vous pouvez essayer ServerFault ... Plus IIS gars là-bas ... –

+0

Appartient sur ServerFault –

+1

Je ne suis pas d'accord, c'est plus une question sur ASP.Net MVC. Il a juste donné le contexte qu'il l'exécute sur IIS7 –

Répondre

2

Le symbole + est également le symbole d'un espace lorsque l'URL est codée. Pourrait-il être vos itinéraires sont mis en place en attendant le plus, qui n'arrive jamais parce qu'en fait c'est un espace? Je ne sais pas pourquoi cela fonctionnerait sur votre machine locale, mais pas sur la boîte IIS. Editer: Un un-validated random page on the net suggère que certains symboles doivent être codés, sauf s'ils sont utilisés dans un but spécifique. Je ne suis pas sûr que cela s'applique au + car je pense que son but spécifique est de représenter des espaces dans les URL - mais je suppose que% 20 vaut le coup si cela aide d'une manière ou d'une autre? (Et j'apprécie, + rock pour les URLs amicales bien plus que% 20)

+0

Ouais je savais que le + était pour l'espace blanc, la route est configurée pour s'attendre à une chaîne donc je suppose que ce serait o.k. – Slee

+0

Si vous attendez un espace en fonction de votre itinéraire, alors ce n'est pas ça. Avez-vous essayé de remplacer le + par un% 20, quel résultat cela donne-t-il? – Amadiere

+0

GAH - Je veux des bonnes URL, donc je suppose que je dois les fabriquer moi-même. Pour une raison quelconque, j'ai supposé que URLEncode créerait des URL valides - comment stupide de moi – Slee

Questions connexes