У меня есть API колбы для управления погружным нагревательным устройством.Запрос CORs с флягой api - результаты запроса POST запроса JACKER в OPTIONs
https://github.com/timcknowles/anovapi_backend/blob/master/anova.py
Это на мой локальный сервер, и он правильно отвечает на запросы JQuery POST на том же домене, например,
$(document).ready(function() {
$("#start").click(function() {
$.ajax({
type: 'post',
url: 'http://192.168.0.13:5000/start',
dataType: 'jsonp',
success: function(data) {
$("#message").html(data);
}
$("#settemp").click(function() {
$.ajax({
type: 'post',
contentType: 'application/json',
url: ' http://192.168.0.13:5000/temp',
data: JSON. stringify ({"temp":"50"}),
dataType: 'json',
success: function(data) {
$("#message").html(data);
}
});
Однако я хотел построить Синатра приложение клиента на другом сервере
https://github.com/timcknowles/anovapi_frontend/blob/master/main.rb
взаимодействовать с тем же API. JQuery идентичен и отлично работает для вызова START, однако для вызова TEMP он не работает.
В консоли разработчика firefox я вижу, что у него есть ВАРИАНТЫ вместо запроса POST (ответ 200).
Первоначально у меня были проблемы с перекрестными доменами со всеми моими запросами api jQuery, и я решил, что решил их, добавив расширение флеш-корса в api.
https://pypi.python.org/pypi/Flask-Cors
Я не понимаю, почему температура вызова не работает, но другие. Я подозреваю, что это потому, что я отправляю данные в виде значений температуры.
Любые советы очень ценятся.
Какая ошибка во втором звонке? –
Он не видел, чтобы дать ошибку, он просто не работает. – TimK
Ловушка функция ошибки в js или посмотреть, что результат вызова в ваших инструментах разработчика браузера. –