purebasic.info
http://purebasic.info/phpBB3ex/

InsertJSONStructure и Boolean
http://purebasic.info/phpBB3ex/viewtopic.php?f=1&t=4811
Страница 1 из 1

Автор:  Ste1nS [ Ср дек 27, 2017 1:44 pm ]
Заголовок сообщения:  InsertJSONStructure и Boolean

Столкнулся с проблемой при Извлечении структуры в JSON.
Не пойму как заставить InsertJSONStructure Вернуть Age.b в BOOLEAN
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Structure Person
    FirstName$
    Age.b
  EndStructure
 
  Define P.Person
  P\FirstName$ = "John"
  P\Age = #True
 
  If CreateJSON(0)
    InsertJSONStructure(JSONValue(0), @P, Person)
    Debug ComposeJSON(0)
  EndIf
 



Вот что выдает результат:
Код:
1
{"FirstName":"John","Age":1}



А должен:
Код:
1
{"FirstName":"John","Age": true}


Автор:  @ZOLO@ [ Ср дек 27, 2017 2:02 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
Structure Person
    FirstName$
    Age.s
  EndStructure
 
  Define P.Person
  P\FirstName$ = "John"
  P\Age = "True"
 
  If CreateJSON(0)
    InsertJSONStructure(JSONValue(0), @P, Person)
    Debug ComposeJSON(0)
  EndIf

А так?

Автор:  Ste1nS [ Ср дек 27, 2017 2:11 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

@ZOLO@ писал(а):
А так?

....
Мне надо чтоб Age Был BOOLEAN а не STRING

Изображение

Если отправить Age как STRING или LONG и т.п
В ответ приходит это:
Код:
1
Bad Request: Field \"age\" must be of type Boolean


Автор:  @ZOLO@ [ Ср дек 27, 2017 2:19 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

Ste1nS, PureBasic поддерживает Byte.b(-128 to +127) и Ascii.a(0 to +255), и нет BOOLEAN(0 to 1).
InsertJSONStructure правильно разбирает, если не устаревает пиши аналог InsertJSONStructure.

Автор:  Ste1nS [ Ср дек 27, 2017 2:22 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

@ZOLO@ писал(а):
Ste1nS, PureBasic поддерживает Byte.b(-128 to +127) и Ascii.a(0 to +255), и нет BOOLEAN(0 to 1).

Как нету BOOLEAN(0 to 1)?
Справку читай:
Код:
1
2
3
4
5
6
7
8
9
10
11
12
 
;SetJSONBoolean(JSONValue, Value)
;Change the type of the JSON value to #PB_JSON_Boolean and store the given boolean value.
 
If CreateJSON(0)
    ArrayValue = SetJSONArray(JSONValue(0))
    SetJSONBoolean(AddJSONElement(ArrayValue), #True)
    SetJSONBoolean(AddJSONElement(ArrayValue), #False)
   
    Debug ComposeJSON(0)
EndIf
 


Автор:  @ZOLO@ [ Ср дек 27, 2017 2:27 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

Ste1nS Справку открой, раздел Variables, Types and Operators. И посмотри на GetJSONBoolean что она выдает 0, 1 или True, False?

Автор:  SereZa [ Ср дек 27, 2017 2:36 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

видимо дополнительно доставить проверку надо. иф 1 - показать тру, иф 0 - фалсе

Автор:  Ste1nS [ Ср дек 27, 2017 2:39 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

@ZOLO@ писал(а):
Ste1nS Справку открой, раздел Variables, Types and Operators. И посмотри на GetJSONBoolean что она выдает 0, 1 или True, False?


Так мне надо из Structure сделать JSON.
При чем тут вообще GetJSONBoolean? :?

Получить API JSON ответ у меня нормально получается а отправить не могу так как возникли трудности с BOOLEAN

Автор:  Ste1nS [ Ср дек 27, 2017 2:41 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

SereZa писал(а):
видимо дополнительно доставить проверку надо. иф 1 - показать тру, иф 0 - фалсе

Так вот я и не понимаю как InsertJSONStructure заставить понять что там BOOLEAN и надо вставить не "1" а "true"

Автор:  @ZOLO@ [ Ср дек 27, 2017 2:46 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

Ste1nS писал(а):
SereZa писал(а):
видимо дополнительно доставить проверку надо. иф 1 - показать тру, иф 0 - фалсе

Так вот я и не понимаю как InsertJSONStructure заставить понять что там BOOLEAN и надо вставить не "1" а "true"
Писать аналог InsertJSONStructure, по другому не как.

Или забыть про InsertJSONStructure, и писать свой парсер или разбирать структуру при помощи JSONType.

Автор:  Ste1nS [ Ср дек 27, 2017 3:46 pm ]
Заголовок сообщения:  Re: InsertJSONStructure и Boolean

@ZOLO@ писал(а):
Или забыть про InsertJSONStructure, и писать свой парсер или разбирать структуру при помощи JSONType.


Спс, так и сделал.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/