当前位置: 首页 > 知识库问答 >
问题:

无法通过WSO2 API管理器中自定义中介流中的调用中介

闻人宝
2023-03-14

在WSO2 AM1.10中创建了自定义中介流,以实现API链接。作为第一步,我创建了这个流,作为一个测试,它调用一个REST服务来生成一个令牌,并将响应返回给客户机。

<?xml version="1.0" encoding="UTF-8"?>
<sequence name="ppayload" trace="enable" xmlns="http://ws.apache.org/ns/synapse">
  <property action="remove" name="REST_URL_POSTFIX" scope="axis2"/>
  <property name="uri.var.x" scope="default" type="STRING" value="5"/>
  <property name="uri.var.y" scope="default" type="STRING" value="5"/>
  <log level="custom" separator=",">
    <property expression="get-property('uri.var.y')" name="y"/>
    <property expression="get-property('uri.var.x')" name="x"/>
  </log>
  <call>
    <endpoint>
      <http method="get" trace="enable" uri-template="https://192.88.65.18:9443/am/sample/calculator/v1/api/add?x={uri.var.x}&amp;y={uri.var.y}"/>
    </endpoint>
  </call>
  <respond/>
</sequence>

然而,在超时之后,客户端收到一个“没有来自服务器的响应”。但在日志中,我看到API网关收到了正确的响应,它只是没有将其转发给客户机。

另外,我尝试在调用中介器之后添加日志中介器来记录响应,但在序列中的调用中介器执行之后不会出现任何结果。

[2016-07-20 12:13:42,195] DEBUG - wire >> "GET /c/1.0.0 HTTP/1.1[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Authorization: Bearer c5836f1cb43350b803cb39c706c1c7ce[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Accept: application/json[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Referer: https://192.88.65.18:9443/store/apis/info?name=C&version=1.0.0&provider=admin[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Accept-Language: fr-FR[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Accept-Encoding: gzip, deflate[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Host: 192.88.65.18:8243[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Connection: Keep-Alive[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "Cookie: JSESSIONID=4308DDC996DAAE6B65F183E65931DE14; requestedURI="../../carbon/mediation-tracer/index.jsp?region=region4&item=mediation_tracer_menu"; region1_configure_menu=none; region5_tools_menu=none; i18next=fr-FR; selectedTab=view; current-breadcrumb=monitor_menu%2Cmediation_tracer_menu%23; MSG14682483937790.7211503494363702=true; MSG14683265253540.54003207439675=true; MSG14683266178700.10747833380176508=true; MSG14688271624980.9002550537769108=true; MSG14688272096380.869345530960711=true; MSG14688276939770.25641217913473224=true; MSG14688285230820.7837411368495956=true; MSG14688303649840.057579581328428775=true; MSG14688354130800.8363238567475415=true; MSG14688444175760.4841881764888184=true; region4_monitor_menu=visible; region3_registry_menu=visible; csrftoken=rg0quh61dsudlg02rvus1qs491; menuPanel=visible; menuPanelType=monitor[\r][\n]"
[2016-07-20 12:13:42,195] DEBUG - wire >> "[\r][\n]"
[2016-07-20 12:13:42,200]  INFO - LogMediator y = 5,x = 5
[2016-07-20 12:13:42,204] DEBUG - wire << "GET /am/sample/calculator/v1/api/add?x=5&y=5 HTTP/1.1[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Cookie: JSESSIONID=4308DDC996DAAE6B65F183E65931DE14; requestedURI="../../carbon/mediation-tracer/index.jsp?region=region4&item=mediation_tracer_menu"; region1_configure_menu=none; region5_tools_menu=none; i18next=fr-FR; selectedTab=view; current-breadcrumb=monitor_menu%2Cmediation_tracer_menu%23; MSG14682483937790.7211503494363702=true; MSG14683265253540.54003207439675=true; MSG14683266178700.10747833380176508=true; MSG14688271624980.9002550537769108=true; MSG14688272096380.869345530960711=true; MSG14688276939770.25641217913473224=true; MSG14688285230820.7837411368495956=true; MSG14688303649840.057579581328428775=true; MSG14688354130800.8363238567475415=true; MSG14688444175760.4841881764888184=true; region4_monitor_menu=visible; region3_registry_menu=visible; csrftoken=rg0quh61dsudlg02rvus1qs491; menuPanel=visible; menuPanelType=monitor[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Accept: application/json[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Referer: https://192.88.65.18:9443/store/apis/info?name=C&version=1.0.0&provider=admin[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Accept-Encoding: gzip, deflate[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Accept-Language: fr-FR[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Host: 192.88.65.18:9443[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "Connection: Keep-Alive[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "User-Agent: Synapse-PT-HttpComponents-NIO[\r][\n]"
[2016-07-20 12:13:42,204] DEBUG - wire << "[\r][\n]"
[2016-07-20 12:13:42,205] DEBUG - wire >> "HTTP/1.1 200 OK[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "Date: Wed, 20 Jul 2016 10:13:42 GMT[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "Content-Type: application/json[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "Content-Length: 18[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "Server: WSO2 Carbon Server[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "[\r][\n]"
[2016-07-20 12:13:42,206] DEBUG - wire >> "{"answer": "10.0"}"
[2016-07-20 12:13:42,208] ERROR - ContinuationStackManager Resource : null not found
[2016-07-20 12:13:42,214] ERROR - SynapseCallbackReceiver Synapse encountered an exception, No error handlers found - [Message Dropped]
Resource : null not found
[2016-07-20 12:13:54,738]  INFO - CarbonAuthenticationUtil 'admin@carbon.super [-1234]' logged in at [2016-07-20 12:13:54,738+0200]
[2016-07-20 12:14:24,850]  WARN - SourceHandler Connection time out after request is read: http-incoming-43
[2016-07-20 12:14:42,259]  WARN - SourceHandler Connection time out after request is read: http-incoming-44

谁能指出我的配置有什么问题吗。谢谢你。

共有1个答案

韦胜泫
2023-03-14

看起来像是一个已经修复的bug(参见此处),使用此commit。也许你可以手动补丁它,因为它是一个小修复,直到你得到下一个版本。1.10版本的源代码在这里。

 类似资料:
  • 我正在研究创建一个自定义处理器从一个自定义源中摄取数据,那里没有现有的nifi处理器。 我一直试图理解Nifi组件如何工作的机制,并看到了一些关于如何创建自定义处理器的好文档,然而,我看不到任何关于管理偏移量的内容。假设我有一个运行1秒的处理器,但需要从某个任意偏移量继续进行处理,这可能会每秒钟产生结果,也可能不会产生结果。

  • 本文向大家介绍Django中自定义模型管理器(Manager)及方法,包括了Django中自定义模型管理器(Manager)及方法的使用技巧和注意事项,需要的朋友参考一下 1.自定义管理器(Manager) 在语句Book.objects.all()中, objects 是一个特殊的属性,通过它来查询数据库,它就是模型的一个Manager. 每个Django模型至少有一个manager,你可以创建

  • 我可以调试这个代码和逻辑路径似乎是正确的。如果我尝试搜索,我会发现带有或的文档,但是没有结果,例如,。 我想念什么?

  • 我发现了SpringData1.6.0的奇怪行为(降级的版本1.5.2没有这个问题)。这个版本似乎严格要求实体管理器工厂bean的id为“entityManagerFactory”。如果不是,则在运行TestNG测试时出现此错误: 引起原因:org.springframework.beans.factory.BeanCreation异常:创建名为'jpaMapppingContext'的bean时

  • 我正在尝试在Dropwizard实例中添加自定义标题过滤器,以检查请求的版本是否与DropWidger实例的版本同步。 我看到您可以使用添加jetty。但是,我无法弄清楚如何设置自定义过滤器。 谢谢

  • 我正在编写一个程序,它使用了带有Spring Security的JWT身份验证。我已经实现了自定义授权和身份验证过滤器。另外,我需要持久化我的令牌,它是由这些过滤器形成的。为此,我创建了令牌DAO服务,它自动连接到过滤器,并用注释标记我的过滤器以自动连接该服务。但我无法正确自动执行身份验证管理器。 我尝试在安全配置类中公开身份验证管理器bean,但没有结果。 这个错误是我在尝试构建项目时遇到的。