Задать вопрос
maaGames
@maaGames
Погроммирую программы

Как преобразовать из WebView2 json в строку?

На Win7/Win8 не создаётся интерфейс ICoreWebView2_21 и результат работы скрипта возвращается в виде контента json-строки. То есть тело документа преобразовано в строку, которая может быть сохранена в json объекте как строка. Это возвращаемое значение надо преобразовать в обычную строку. В актуальной версии это делается через ICoreWebView2ExecuteScriptResult::TryGetResultAsString, но в базовом интерфейсе возвращается "сырая" строка. Во всяких бейсиках и шарпах вызывается метод deserialize, заменяющий escape-последовательности.
Есть ли подобный функционал в WebView2 для С++? Раз оно делается внутри WebView2, то такой функционал есть, но вот можно ли его использовать самостоятельно?

wil::com_ptr<ICoreWebView2_21> webView = m_webView.try_query<ICoreWebView2_21>();
	if( webView )
	{
		HRESULT hr = webView->ExecuteScriptWithResult( L"document.body.outerHTML;", Callback<ICoreWebView2ExecuteScriptWithResultCompletedHandler>( this, &Dlg::ExecuteScriptComplete ).Get() );
	}
	else
	{
		AfxMessageBox( L"try_query<ICoreWebView2_21> == null" );

		HRESULT hr = m_webView->ExecuteScript( L"document.body.outerHTML;", Callback < ICoreWebView2ExecuteScriptCompletedHandler>( this, &Dlg::ExScriptComplete ).Get() );
	}
  • Вопрос задан
  • 64 просмотра
Подписаться 1 Сложный 4 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Специалист по информационной безопасности + нейросети
    12 месяцев
    Далее
  • Компьютерная академия «TOP»
    Учебная программа “Разработка программного обеспечения”
    30 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Воронеж
от 50 000 до 90 000 ₽
Уницифра Краснодар
от 180 000 до 200 000 ₽
Oggetto Ростов-на-Дону
До 350 000 ₽