Czy istnieje sposób dodawania danych do couchdb, który działa w innej domenie i otrzymać odpowiedź, czy operacja przebiegła pomyślnie, czy nie? Wiem, że usługa couchdb obsługuje wywołanie zwrotne jsonp, ale czy mogę dodać dane za pomocą tego podejścia?Dodaj dane do couchdb z odpowiedzią jsonp
Odpowiedz
Nie, aktualnie nie można tego zrobić. Interfejs API REST CouchDB wymaga żądania POST lub PUT w celu wstawienia danych, ale JSONP obsługuje tylko żądania GET. Możesz więc pobrać dane z CouchDB w różnych domenach, ale aktualizacje/inserts/deletes nie będą działać.
Możesz użyć javascript po stronie klienta, aby utworzyć formularz do wykonania testu POST, skieruj dane wyjściowe do elementu iframe i użyj przesyłania wiadomości iframe z wieloma oknami, aby uzyskać wynik.
Oczywiście, ktoś zrobił już ładną bibliotekę javascript, aby to zrobić. Pobierz kod tutaj: https://github.com/benvinegar/couchdb-xd
Postępuj zgodnie z instrukcjami, aby wypchnąć go jako dodatkową bazę danych na swoim serwerze couchdb. Następnie na każdej stronie, to nie w domenie „your-tapczan-server”, można wykonać następujące czynności (po prostu spróbuj w konsoli JavaScript):
jQuery.getScript(
"http://YOUR-COUCH-SERVER/couchdb-xd/_design/couchdb-xd/couchdb.js",
function() {
Couch.init(
function() {
var s = new Couch.Server('http://YOUR-COUCH-SERVER/');
var d = new Couch.Database(s,'YOURDB');
d.put(
"stackoverflow-test 1",
{ foo: 111, bar: 222 },
function(resp) {
console.log(resp);
}
);
}
)
}
);
Powyższe zakłada masz jQuery jest już załadowany na stronę. Jeśli nie, musisz go dodać, ale aktualnie współpracujesz z drugą stroną.
Biblioteka działa tylko w nowoczesnych przeglądarkach z obsługą window.postMessage(), choć niewielka poprawka może ostatecznie umożliwić starszym przeglądarkom korzystanie z niej poprzez komunikację src/hash.
- 1. Dodaj dodatkowe dane do tabeli łączenia - Railsy
- 2. Napisz formularz z JSONP
- 3. Dodaj dane json do istniejącej tablicy
- 4. Jakikolwiek sposób ograniczenia dostępu do widoku CouchDB, gdy włączony jest JSONP?
- 5. iPhone - Dodaj podstawowe dane do istniejącego projektu?
- 6. Dodaj dodatkowe dane do wprowadzenia simple_form
- 7. Powracający JSONP z Jersey
- 8. Pobieranie wielu dokumentów CouchDB z couchdb-pythonem
- 9. nawigacji i dodaj dane z silverlight
- 10. Autouzupełnianie jquery z odpowiedzią jsonową
- 11. jQuery JSONP nie dzwoni do oddzwaniacza
- 12. Stan podobny do CouchDB
- 13. Scalenie kolekcji kręgosłupa z odpowiedzią serwera
- 14. CouchDB dostęp do domeny z XMLHttpRequest?
- 15. Jak skopiować z CouchDB do PouchDB?
- 16. Uwierzytelnianie CouchDB
- 17. Obsługa błędów zabezpieczeń sprężynowych z odpowiedzią JSON
- 18. CouchDB Map/Reduce do tablicy
- 19. Jak usunąć pewne cookies z odpowiedzią nginx
- 20. Uzyskiwanie nagłówka z odpowiedzią (Retrofit/OkHttp Client)
- 21. Dodaj nowe dane wiersz do gridview asp.net C#
- 22. jak zabić starszą prośbę jsonp?
- 23. Wady CouchDB
- 24. CouchDB przykład z prawdziwego świata
- 25. Jak analizować jsonp PHP
- 26. Aplikacje offline z Node.JS i CouchDB
- 27. Dane dynamiczne ASP.NET Dodaj dodatkowe kryteria filtrowania do strony
- 28. Ustaw nagłówki z jQuery.ajax i JSONP?
- 29. Radzenie sobie z rosnącą odpowiedzią serwera w AJAX (w JavaScript)
- 30. jquery $ .ajax jsonp