
09.03.2015, 09:51
|
Интересующийся
|
|
Регистрация: 21.02.2015
Сообщений: 22
|
|
Unexpected token AJAX
Добрый день. Подскажите новичку, почему не уходит пост запрос на сервер? Ошибка в названии темы.
Код:
if(pardva){
$.ajax({
url: "/payment.do?form=RurPayment&receiverSubType=ourCard",
type: "POST",
data: {
org.apache.TOKEN: tokensuka,
back: "false",
copying: "false",
paymentPage: "",
exactAmount: "charge-off-field-exact",
buyAmountCurrency: "RUB",
isErrorCurrency: "false",
isCardTransfer: "false",
documentNumber: docs,
documentDate: "09.03.2015",
receiverSubType: "ourCard",
externalPhoneNumber: "",
currency: "RUB",
receiverAccountCurrency: "",
receiverAccountInternal: "",
receiverCorAccount: "",
messageToReceiver: "",
PAGE_TOKEN: tokensukadva,
operation: "button.save"
},
onAjaxSuccess
});
}
Ругается на строку:
org.apache.TOKEN: tokensuka,
А tokensuka - это переменная с данными типа 3453khj5j345h34k3242
|
|

09.03.2015, 10:21
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Потому, что переменная tokensuka ругательная.
TOKEN: tokensuka или orgApacheToken, но не org.apache.TOKEN
|
|

09.03.2015, 10:22
|
Интересующийся
|
|
Регистрация: 21.02.2015
Сообщений: 22
|
|
Сообщение от laimas
|
Потому, что переменная tokensuka ругательная.
TOKEN: tokensuka - так или orgApacheToken, но не org.apache.TOKEN
|
Что тогда поделать если переменная называется org.apache.TOKEN ?
Может в кавычки или еще как её взять? или экранировать.
Подскажите пожалуйста.
|
|

09.03.2015, 10:24
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Можно в кавычки. А вы что подневольны и имена переменных не вы определяете?
|
|

09.03.2015, 10:26
|
Интересующийся
|
|
Регистрация: 21.02.2015
Сообщений: 22
|
|
Сообщение от laimas
|
Можно в кавычки. А вы что подневольны и имена переменных не вы определяете?
|
По воле случая увы не я определяю название переменной.
Подскажите как правильно взять в кавычки название переменной?
|
|

09.03.2015, 10:28
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Как обычно:
"org.apache.TOKEN": tokensuka,
|
|

09.03.2015, 10:36
|
Интересующийся
|
|
Регистрация: 21.02.2015
Сообщений: 22
|
|
Сообщение от laimas
|
Как обычно:
"org.apache.TOKEN": tokensuka,
|
"org.apache.TOKEN": tokensuka,
form: "RurPayment",
template: "",
Вообще не работает ничего...
Видать как то подругому надо.[/quote]
Последний раз редактировалось Frost-56rus, 09.03.2015 в 10:39.
|
|

09.03.2015, 10:45
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
org.apache.TOKEN: tokensuka - здесь ругается потому, что это операция определения/переопределения свойства объекта, чего не должно быть мягко говоря в задаваемом объекте описывающем параметры запроса. Если бы это выглядело к примеру так:
key: org.apache.TOKEN, то возможно была бы ошибка тоже, но в том случае, если объекта такого или его свойств не было определено.
"org.apache.TOKEN": tokensuka, а это уже строковое значение "org.apache.TOKEN", в которое можно написать все что угодно, и это не будет ошибкой.
Так что выбирать не из чего. И что конкретно не работает я не в курсе - если запрос отправляется, а сервер "не понимает", то разбирайтесь с сервером. Если не отправляется запрос, значит нужно выяснять причины.
Вообще, чтобы вы не писали в качестве имени ключа и его значения, все это будут строки, даже если бы можно было так {1 : var}, то сервер получил бы не цифру 1, а строку "1".
|
|

09.03.2015, 10:49
|
Интересующийся
|
|
Регистрация: 21.02.2015
Сообщений: 22
|
|
Спасибо большое, все понятно)
А как назначить dataType чтобы сервер принял в формате обычной form html а не json?
|
|

09.03.2015, 10:50
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Так и напишите:
dataType : "html"
PS. JSON, это не значение по умолчанию, которое примет в ответ клиент, тип данных, которыми будет происходить диалог клиент-сервер, определяется как для сервера, так и для клиента.
Последний раз редактировалось laimas, 09.03.2015 в 10:54.
|
|
|
|