activeresource

___ tag123rubyonrails ___ Ruby on Rails ist ein Open-Source-Full-Stack-Webanwendungs-Framework, das in Ruby geschrieben ist. Es folgt dem populären MVC-Framework-Modell und ist bekannt für seinen "convention over configuration" -Ansatz für die Anwendungsentwicklung. ___ qstnhdr ___ Mehrere Schlüssel / Wert-Paare in HTTP POST, bei denen der Schlüssel den gleichen Namen hat ___ tag123rest ___ REST (Representational State Transfer) ist eine Art von Softwarearchitektur für verteilte Hypermedia-Systeme wie das World Wide Web. Es hat im Vergleich zu RPC-Architekturen wie SOAP aufgrund der intrinsischen Entkopplung von Client von Server, die von einer einheitlichen Schnittstelle zwischen heterogenen Systemen herrührt, an Popularität gewonnen. ___ tag123ruby ___ Ruby ist eine multi-plattform Open-Source, dynamische objektorientierte interpretierte Sprache, erstellt von Yukihiro Matsumoto (Matz) im Jahr 1995. Die [Ruby] -Tag ist für Fragen im Zusammenhang mit der Ruby-Sprache, einschließlich seiner Syntax und seiner Bibliotheken . Fragen speziell zum Ruby-on-Rails-Framework sollten mit [ruby-on-rails], nicht [ruby] getaggt werden. Verwenden Sie dies nicht, um Ruby in der japanischen Sprache zu markieren. ___ answer2614846 ___

Senden Sie Ihre Daten als XML oder JSON und parsen Sie, was immer Sie benötigen.

    
___ qstntxt ___

Ich arbeite an einer API, die Daten von entfernten Clients akzeptiert, von denen einige den Schlüssel in einem HTTP-POST fast wie ein Array funktionieren. In Englisch bedeutet dies, dass ich eine Ressource auf meinem Server namens "Klasse" habe. Eine Klasse in diesem Sinne ist der Typ, in dem ein Schüler sitzt und ein Lehrer erzieht. Wenn der Benutzer einen HTTP-POST einreicht, um eine neue Klasse für seine Anwendung zu erstellen, sehen viele der Schlüsselwertpaare wie folgt aus:

Studentenname: Bob Smith
student_name: Jane Smith
student_name: Chris Smith

Was ist der beste Weg, dies auf der Client-Seite zu handhaben (sagen wir, der Client ist cURL oder ActiveResource, was auch immer ..) und was ist ein vernünftiger Weg, dies auf der Serverseite zu behandeln, wenn mein Server ein Ruby on Rails ist App? Suchen Sie nach einer Möglichkeit, mehrere Schlüssel mit demselben Namen und ohne Namespace-Konflikt oder Datenverlust zuzulassen.

Meine Anforderung muss sein, dass die POST-Daten urlencodierte Schlüssel / Wert-Paare sind.

    
___ tag123activeResource ___ ActiveResource ist die Hauptklasse zum Zuordnen von RESTful-Ressourcen als Modelle in einer Rails-Anwendung ___ answer2614927 ___

Es gibt zwei Möglichkeiten, dies zu handhaben, und es hängt von Ihrer clientseitigen Architektur ab, wie Sie vorgehen, da die HTTP-Standards die Situation nicht abkürzen und austrocknen.

Traditionell würden HTTP-Anfragen einfach denselben Schlüssel für wiederholte Werte verwenden und es der Client-Architektur überlassen, zu erkennen, was vor sich ging. Zum Beispiel könnten Sie eine Post-Anfrage mit den folgenden Werten haben:

%Vor%

Wenn die Empfangsarchitektur diese Zeichenfolge erhalten hat, müsste sie erkennen, dass es mehrere Schlüssel von %code% gibt, und entsprechend handeln. Es wird normalerweise so implementiert, dass bei Verwendung eines einzelnen Schlüssels ein Skalarwert erstellt wird. Wenn Sie ein Vielfaches desselben Schlüssels verwenden, werden die Werte in ein Array eingefügt.

Moderne clientseitige Architekturen wie PHP und Rails verwenden jedoch eine andere Syntax. Jeder Schlüssel, der als Array eingelesen werden soll, wird mit eckigen Klammern versehen:

%Vor%

Die empfangende Architektur erstellt eine Array-Struktur namens "student_name" ohne die Klammern. Die eckige Klammer-Syntax löst das Problem, ein Array nicht mit einem einzigen Wert zu senden, der nicht mit der "traditionellen" Methode behandelt werden kann.

Da Sie Rails verwenden, ist die eckige Klammer-Syntax die richtige Wahl. Wenn Sie der Meinung sind, dass Sie serverseitige Architekturen wechseln oder Ihren Code verteilen möchten, könnten Sie eher agnostische Methoden wie JSON-Codierung für die zu sendende Zeichenfolge verwenden, was zusätzlichen Aufwand bedeutet, aber in Situationen, die Sie erwarten muss umgehen.

Im Zusammenhang mit JQuery Ajax-Parametern hier gibt es einen großartigen Beitrag zu all dem >.

    
___
2
Antworten

Undefinierte Methode, die nach dem Upgrade von Rails 4 für den Formatter-Fehler "markiert" wurde

Ich habe ein Upgrade von Rails 3.2 auf Rails 4 durchgeführt, indem ich den Ruby Screencast Guide befolgt habe. Meine Tests laufen und der Server startet, aber ich erhalte einen Fehler, wenn ich eine Anfrage sende: %Vor% Ich habe mir den Code...
11.08.2013, 20:39
1
Antwort

Deaktivieren Sie das json-Wurzelelement in eingebetteten Objekten in der ActiveResource-Abfrage

Ich habe ein Problem mit unnötigem Wurzelelement im eingebetteten json-Objekt. Hier sind die gereinigten Quellen: Benutzermodell: %Vor% Controller Aktion 'neu' %Vor% User.build gibt mir nächsten JSON: %Vor% Die Aktion des Controll...
31.03.2011, 11:48
2
Antworten

Aktive Ressourcenantworten, wie Sie diese erhalten

Ich habe eine aktive Ressource, die ich nach Daten abfrage. Es gibt Datensätze zurück, zählt, was immer ich möchte. zB: product = Product.find (123) Die Antwort-Header enthalten angeblich ein benutzerdefiniertes Attribut, sagen wir "HTTP_P...
12.05.2011, 01:34
3
Antworten

Gibt es eine ActiveResource-ähnliche Bibliothek für Java? [geschlossen]

Ich weiß, dass es einige ActiveResource-Bibliotheken Client für Java gibt, wie RAPA und < a href="http://jactiveresource.org/"> JactiveResource Die Frage ist: Gibt es eine einfache Möglichkeit, die Serverseite von ActiveResource in Jav...
17.07.2011, 22:19
2
Antworten

Selbstdokumentation der REST-Schnittstelle

Ich habe einen Rails-basierten Server, auf dem mehrere REST-Services ausgeführt werden, und eine Rails-basierte Web-UI, die mit ActiveResource auf dem Server interagiert. Derselbe Server wird von anderen Clients (z. B. Mobiltelefon) verwendet. I...
16.04.2010, 00:41
9
Antworten

Wie kann ich die HTTP-Antwort auf eine ActiveResource-Anforderung anzeigen?

Ich versuche, einen ActiveResource-Aufruf zu debuggen, der nicht funktioniert. Was ist der beste Weg, um die HTTP-Antwort auf die Anfrage von ActiveResource zu sehen?     
22.10.2008, 23:31
2
Antworten

Mehrere Schlüssel / Wert-Paare in HTTP POST, bei denen der Schlüssel den gleichen Namen hat

Ich arbeite an einer API, die Daten von entfernten Clients akzeptiert, von denen einige den Schlüssel in einem HTTP-POST fast wie ein Array funktionieren. In Englisch bedeutet dies, dass ich eine Ressource auf meinem Server namens "Klasse" habe....
10.04.2010, 20:01