1

Новый формат JSON

Topic: Новый формат JSON

Хотел бы уточнить в чем отличие «собственного» стандарта JSON от общепризнанного мирового стандарта ECMA-404?
Желательно привести пример.

2

Новый формат JSON

Re: Новый формат JSON

Основные отличия нашего старого JSON-парсера, от парсера по стандарту ECMA-404:
1. По стандарту все ключи и строковые значения должны быть в двойных кавычках: {"key":"value"}, старый формат мог допускать значения в одинарных кавычках и даже без них.
2. Все числовые значения должны быть десятичными: {"key":256}, старый формат допускал шестнадцатеричные числа вида 0xff
3. Не рекомендуется форматировать JSON табуляциями и пробелами, желательно использовать так:  {"key":"value with space"}

В ближайшее время будет развёрнут remote-api сервис (на подобие hst-api.wialon.com), подключившись к которому можно будет проверить корректность работы собственных приложений с JSON по стандарту ECMA-404.
Как только сервис заработает об этом будет сообщено здесь дополнительно.

Solutions Department
Gurtam
3

Новый формат JSON

Re: Новый формат JSON

т.е. если мы использовали только Виалон и не брали информацию из ее в другие программы, то ни чего не изменится?

4

Новый формат JSON

Re: Новый формат JSON

smg_sup, для обычных пользователей Wialon ничего не меняется.
Речь только про сторонние разработки (приложения), работающие с Wialon.

Solutions Department
Gurtam
5

Новый формат JSON

Re: Новый формат JSON

Remote-api сервис с JSON-парсером по стандарту ECMA-404 готов для проверки Ваших приложений.
Адрес тестового сервиса: http(s)://test-api.wialon.com
Замените hst-api.wialon.com в Ваших приложениях на этот адрес (или создайте копию приложения с новым адресом) и проверяйте всё ли корректно работает.

Solutions Department
Gurtam
6

Новый формат JSON

(edited by vit34 30/11/2016 15:15:46)

Re: Новый формат JSON

А на Wialon SDK(Java) это повлияет?
Вот сейчас авторизацию по токену на test-api не могу пройти. Получаю access denied (errorCode 7)
На вашем тестовом плейграунде тоже самое.
C hst-api все отлично.

7

Новый формат JSON

Re: Новый формат JSON

Да действительно не работает тестовый сервер.
так же возвращается ошибка error 7

8

Новый формат JSON

Re: Новый формат JSON

vit34, dencorp, действительно была неучтённая проблема. Исправили. Проверьте ещё раз.

Solutions Department
Gurtam
9

Новый формат JSON

Re: Новый формат JSON

Коллеги, если я использую PHP и функции json_encode() и json_decode() - мне ведь можно не думать об этих изменениях?

10

Новый формат JSON

Re: Новый формат JSON

sfo wrote:

Коллеги, если я использую PHP и функции json_encode() и json_decode() - мне ведь можно не думать об этих изменениях?

Всё верно
При использовании стандартных функций преобразования в/из JSON'a проблем быть не должно

11

Новый формат JSON

Re: Новый формат JSON

Новый JSON-парсер внесён в http(s)://dev-api.wialon.com (бета сервер).
Тестовый сервис http(s)://test-api.wialon.com остановлен.
На следующей неделе новый парсер попадёт в http(s)://hst-api.wialon.com (мастер).

Solutions Department
Gurtam
12

Новый формат JSON

(edited by Sirius 26/04/2017 19:01:46)

Re: Новый формат JSON

deal wrote:

2. Все числовые значения должны быть десятичными: {"key":256}, старый формат допускал шестнадцатеричные числа вида 0xff

Нда народ, я с вас в шоке. Недавно софтина работала, а сейчас запустил и не фурычит. Перерыл весь код, полез смотреть документацию. Случайно тут увидел изменение параметров запросов. В документации как были шестнадцатиричные флаги в примерах так и остались.
К сожалению программирование плохо развивает телепатию, чтобы угадывать подобное.
Матов не хватает.

13

Новый формат JSON

(edited by deal 27/04/2017 19:29:36)

Re: Новый формат JSON

Sirius, недавно работало - это полгода назад?
О переходе на JSON по стандарту ECMA-404 писали на форуме и делали рассылку полгода назад.
Кроме того поднимали тестовый сервер, для того, чтобы можно было проверить свои приложения на возможные проблемы.
По прошествии нескольких месяцев, после того, как вопросы утихли, обращения к тестовому серверу сошли на 0 произошёл окончательный переход на этот стандарт.
Само собой такие изменения не могут гладко и бесследно происходить. Именно поэтому был развёрнут тестовый сервер и несколько месяцев мы помогали исправить проблемы в клиентских приложениях.
Но сам переход на стандарт был неизбежен, т.к. самописный json-парсер имел ряд проблем и не отличался высокой производительностью.
По поводу документации.
В примерах испрользования API уже фигурируют десятичные числа вместо шестнадцатиричных.
В самой документации API ещё встречаются шестнадцатиричные значения. В скором времени будут добавлены десятичные их представления.

Solutions Department
Gurtam