Разрабатывая образец приложения в react-native, я получаю ответ в формате html. Как преобразовать ответ html в формат JSON в react-native.
Это именно то, что я получаю в ответ
"content": "<!doctype html>\r\n<html>\r\n<head>\r\n<style>\r\n#ac-wrapper {\r\n position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255,255,255,.6); z-index: 1001;\r\n}\r\n.region{\r\n color: #fff; font-weight: bold; text-transform: capitalize;\r\n}\r\n.city{\r\n color: #fff;\r\n}\r\n.no-margin{\r\n margin:0px;\r\n}\r\n#popup{\r\n width: 555px; height: 230px; background: #0B6390; border: 1px solid #0B6390; box-shadow: #64686e 0px 0px 3px 3px;\r\n -moz-box-shadow: #64686e 0px 0px 3px 3px; -webkit-box-shadow: #64686e 0px 0px 3px 3px; position: relative; top: 150px;\r\n}\r\n.button, .button:hover{\r\n width:100%; background:#fff; color:#000 !important; font-weight: bold;\r\n}\r\n</style>\r\n</head>\r\n\r\n<body>\r\n<center>\r\n<div id=\"ac-wrapper\">\r\n <div id=\"popup\">\r\n <h2 class=\"region\">Select Your Region</h2>\r\n </br>\r\n <h3 class=\"city\" >Choose Your Nearest City</h3>\r\n <br>\r\n <div class=\"col-sm-6\">\r\n <a href=\"{{store url=\"\"}}vizag\" target=\"_blank\">\r\n <button class=\"button\">Visakhapatnam</button>\r\n </a> \r\n </div>\r\n <div class=\"col-sm-6\">\r\n <a href=\"{{store url=\"\"}}hyd\" target=\"_blank\">\r\n <button class=\"button\">Hyderabad</button>\r\n </a> \r\n </div>\r\n </div>\r\n</div>\r\n</center>\r\n\r\n<script type=\"text/javascript\">\r\nfunction PopUp(){\r\n document.getElementById('ac-wrapper').style.display=\"none\"; \r\n}\r\n</script>\r\n</body>\r\n\r\n</html>"
не могли бы вы дать мне образец. Если я использую синтаксический анализ, он еще не работает
Нет. См. Мое примечание о том, что он "слишком широк".
"если я использую синтаксический анализ, он еще не работает" ... что за синтаксический анализ? Очевидно, что JSON.parse не будет работать, потому что данные не JSON. Вам нужно что-то, что будет анализировать HTML и позволить вам затем легко перемещаться по нему и извлекать из него биты. Например, jQuery может это сделать. Я уверен, что есть много других вариантов, если вы поищете. Затем, как только вы сможете извлечь нужные биты из HTML, вы можете превратить его в объект JS, а затем вы можете преобразовать его в JSON. Это шаги, которые вам нужно пройти. Все они по отдельности можно исследовать, а примеры уже можно найти в Интернете.
Проведите фундаментальное исследование и попробуйте, пожалуйста. Это не бесплатная услуга по исследованию, написанию кода и даже не по принципу «делай свое мышление». Мы отдаем свое свободное время, а взамен ожидаем хотя бы некоторых свидетельств того, что ваше собственное время было потрачено в первую очередь. Мы предоставим вам помощь для решения вашей проблемы, а не реши это за тебя. Если вам нужно, чтобы кто-то выполнял всю работу от вашего имени, вам нужно будет заплатить кому-то (а не нам). Судя по вашей оценке репутации, я надеюсь, что вы уже хорошо понимаете, как работает этот сайт.
в React-native jQuery не работает правильно ??
Я не об этом говорил - я хотел пойти и провести простое исследование для себя. (Хотя, я бы предположил, что jQuery технически не требует наличия DOM для синтаксического анализа строки HTML в проходимый объект, но я могу ошибаться. Черт возьми, почему бы не попробовать это и посмотреть, куда вы попадете?)
Возможный дубликат Преобразование HTML в JSON в react-native






Вы можете использовать эту библиотеку: https://github.com/andrejewski/himalaya
import {parse} from 'himalaya'
const html = '<html/>' //your html goes here
const json = parse(html)
console.info(json)
Вам нужно будет проанализировать HTML, извлечь из него данные, которые вам нужны (я понятия не имею, что это за данные, выражение их в виде одной строки HTML-кода, закодированного в JavaScript, делает его более или менее нечитаемым) , поместите его в структуру данных JavaScript, а затем преобразуйте в JSON. Большие куски из них либо «слишком широки», либо представляют собой вопрос о переполнении стека, либо «неясны» в отношении того, какой именно результат вы хотите получить.