java.lang.RuntimeException: wXb6Vnl31u :: Ошибка для HTML= 001 003 004 005 006 007 008 009
010

Генерация API-токена без интерфейса

011 012

Если через интерфейс не доступна возможность генерации 013 API_TOKEN, то это можно сделать с помощью REST-API вызовов.

014 015

Поиск идентификатора пользователя

016 017

Вначале нужно узнать идентификатор пользователя, для которого 018 необходимо сгенерировать API_TOKEN.

019 020

Вариант, через реестр пользователей:

021 022
    023
  1. Зайдите в реестр пользователей, и найдите того пользователя, 024 для которого нужно получить API_TOKEN.
  2. 025 026
  3. Откройте окно разработчика (F12) в браузере. И перейдите в 027 список запросов. Установите фильтр Fetch/XHR.
  4. 028 029
  5. Откройте карточку данного пользователя.
  6. 030 031
  7. В списке появятся различные запросы на сервер.
  8. 032 033
  9. Найдете запрос create-draft и выделите его
  10. 034 035
  11. Откройте исходящие параметры (Payload)
  12. 036 037
  13. В исходящих параметрах будет JSON и по пути 038 params_Lr1oSgwPR8.boiId - вы увидите идентификатор 039 пользователя.
  14. 040
041 042

Создание API_TOKEN по идентификатору 043 пользователя

044 045

Данное действие делать нужно только в том случае, если для 046 данного пользователя ранее не создавался API_TOKEN.

047 048

Также, если вы хотите стереть прежний API_TOKEN и сгенерировать 049 новый (например потому что старому вы уже не доверяете).

050 051

При генерации нового API_TOKEN-а старый перестаёт 052 аутентифицировать, и если у Вас он используется для каких-либо API 053 вызовов, то они все перестанут работать. Будьте внимательным.

054 055

Для создания нового API_TOKEN нужно вызвать сервис:

056 057
058  POST /web/v2/person/generate-api-token
059  
060  {
061    "useParamsFromBody": true,
062    "params_Lr1oSgwPR8": {
063      "personId": "bgLQ8psUtTWbSty2"
064    },
065    "body_o1nhHUG480": {}
066  }
067  
068  
069  
070  
071 072

В заголовок этого запроса нужно положить параметр с именем 073 Token. Значение его можете взять из вызова create-draft из такого, 074 же параметра. А вместо "bgLQ8psUtTWbSty2" подставьте нужный 075 идентификатор пользователя.

076 077

Данный сервис сгенерирует API_TOKEN для указанного пользователя 078 и вернёт его:

079 080
081  "a27d599b4b2064b6580d0431"
082  
083  
084  
085  
086 087

Кавычки надо убрать.

088 089

Получение текущего API_TOKEN по идентификатору 090 пользователя

091 092

Если пользователь уже имеет API_TOKEN, то его можно получить с 093 помощью вызова сервиса:

094 095
096  POST /web/v2/person/load-api-token
097  
098  {
099    "useParamsFromBody": true,
100    "params_Lr1oSgwPR8": {
101      "personId": "bgLQ8psUtTWbSty2"
102    },
103    "body_o1nhHUG480": {}
104  }
105  
106  
107  
108  
109 110

Данный сервис загрузит API_TOKEN для указанного пользователя и 111 вернёт его:

112 113
114  "a27d599b4b2064b6580d0431"
115  
116  
117  
118  
119 120

Кавычки надо убрать.

121 122

Если вернётся пусто, то у данного пользователя нет API_TOKEN - 123 его нужно сгенерировать сервисом описанным выше.

124 125

Удаление API_TOKEN по идентификатору 126 пользователя

127 128

Если API_TOKEN для данного пользователя создан по ошибке, или 129 уже не нужен, то его можно удалить вызвав сервис:

130 131
132  POST /web/v2/person/remove-api-token
133  
134  {
135    "useParamsFromBody": true,
136    "params_Lr1oSgwPR8": {
137      "personId": "bgLQ8psUtTWbSty2"
138    },
139    "body_o1nhHUG480": {}
140  }
141  
142  
143  
144  
145 146

Код 200 обозначит факт удаления.

147
148 149 at kz.greetgo.md_reader.util.MdUtil.xmlTextToDoc(MdUtil.java:80) at kz.greetgo.md_reader.core.MdConverter.prepareHtmlFileFrom(MdConverter.java:136) at kz.greetgo.md_reader.core.MdConverter.convert(MdConverter.java:208) at kz.greetgo.md_reader.controller.RenderController.downloadToc(RenderController.java:360) at kz.greetgo.md_reader.controller.RenderController.request(RenderController.java:108) at jdk.internal.reflect.GeneratedMethodAccessor3.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:207) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:152) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:118) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:884) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1081) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:974) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1011) at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:903) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:564) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at kz.greetgo.md_reader.interceptors.TextReplaceFilter.doFilter(TextReplaceFilter.java:36) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:166) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:390) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:894) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.base/java.lang.Thread.run(Thread.java:833) Caused by: java.io.IOException: Server returned HTTP response code: 429 for URL: http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:2000) at java.base/sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1589) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(XMLEntityManager.java:677) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1397) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(XMLEntityManager.java:1333) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.startPE(XMLDTDScannerImpl.java:732) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.skipSeparator(XMLDTDScannerImpl.java:2101) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.scanDecls(XMLDTDScannerImpl.java:2064) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.scanDTDExternalSubset(XMLDTDScannerImpl.java:299) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(XMLDocumentScannerImpl.java:1165) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(XMLDocumentScannerImpl.java:1040) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:943) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:605) at java.xml/com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:542) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:889) at java.xml/com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:825) at java.xml/com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141) at java.xml/com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:247) at java.xml/com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:342) at java.xml/javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:122) at kz.greetgo.md_reader.util.MdUtil.xmlTextToDoc(MdUtil.java:71) ... 48 more