2016-04-15 9 views
0

Ist es möglich, unsere eigene HTTP-Methode zu erstellen, indem Sie einfach die Klasse HttpMethodAttribute überschreiben und unsere eigene supportedMethods angeben?Eine benutzerdefinierte HTTP-Methode erstellen

In der Tat müssen wir je nach Fall die Ansicht als vollständige Ansicht mit _Layout zurückgeben, und manchmal müssen wir nur die PartialView dieser Ansicht zurückgeben. Also meine Idee ist, ein benutzerdefiniertes Attribut wie [HttpPartial] zu setzen und so wird der Client abhängig von den in der Anfrage verwendeten Methoden sagen, ob er die vollständige Ansicht (GET-Methode) oder die partielle Ansicht (PARTIAL-Methode) haben möchte.

Antwort

3

Nr

Any HTML-rendering user agent only lets the user initiate GET or POST requests durch Hyperlinks und Formulare.

Sie könnten mehr Methoden durch eine XMLHttpRequest senden, dann aber immer noch sind Sie auf integrierte Methoden beschränkt wie GET, PUT, POST, DELETE.

Brechen Sie nicht das Internet. Gehen Sie nicht und erfinden Sie neue HTTP-Methoden für Ihre Anwendungslogik. Verwenden Sie einfach einen Abfragezeichenfolgenparameter: &partial=true.

Siehe the IANA's Hypertext Transfer Protocol (HTTP) Method Registry für vorhandene Methoden und siehe RCF 7231 section 8.1 für die Registrierung neuer HTTP-Methoden.

+0

Und wenn der HTML-Rendering-Benutzer agant ein Ajax-Aufruf ist, kann ich die Http-Methode angeben? –

+0

Das wäre immer noch albern. Tu das nicht. – CodeCaster

+0

Auch eine Überschrift wie 'X-Request-View: partially' oder so kann eine Option sein, wenn Sie nicht gerne Abfrageparameter verwenden – Tseng

0

Stattdessen würde ich etwas Ähnliches wie Fiedler vorschlagen ...

+0

Ich bin nicht auf der Suche nach einem Werkzeug, sondern eine Idee oder Methode, um die Server-Seite zu erzählen: Verwenden Sie meine Teilansicht oder verwenden Sie meine vollständige Ansicht, all dies nur mit der HTTP-Anfrage. –

Verwandte Themen