ethereum - 调用其余 API (/storeraw ) 时出现 Tessera 跨域问题

标签 ethereum quorum

我正在使用 tessera 在 Quorum 中执行私有(private)交易。当从 postman 调用第三方(privateURL)API 时,我得到了预期的输出,但是当从另一台服务器调用相同的 API 时,我得到一个带有 200 状态码(http://:9081/storeraw)的空响应。由于 CORS,此问题正在发生。我已经检查过:

File:///< HTML_PATH >



它正在工作。

如何为 tessera 第三方 API 启用 CORS?

最佳答案

目前,该功能未在 tessera 中实现。我已经在工作了,我会在完成后回复你。要启用 CORS,请按照以下步骤操作。

  • 从 git 克隆存储库。
  • 打开文件/jaxrs-service/src/main/java/com/quorum/tessera/thridparty/RawTransactionResource.java
  • 替换

  • return Response.status(Status.OK) .type(APPLICATION_JSON) .entity(response) .build();





    return Response.status(Status.OK)
    .type(APPLICATION_JSON)
    .header("Access-Control-Allow-Origin", "*")
    .entity(response)
    .build();
    

  • 重新编译代码
  • 启动 tessera。

  • 注意:这将允许所有来源,请根据您的安全需要修改代码。这不是一个标准,我正在处理配置更改,这将使您可以自由地启用 CORS 并进行相应的更改。

    关于ethereum - 调用其余 API (/storeraw ) 时出现 Tessera 跨域问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55813452/

    相关文章:

    blockchain - 关于如何使用 Quorum 区 block 链的一般问题

    ruby-on-rails - 将以太坊节点绑定(bind)到Rails应用程序中,得到 'JSON::ParserError: 776'

    javascript - 重复事务挂起 - web3js,本地 geth

    security - Solidity重入攻击解释

    ethereum - 如果require语句中的字符串超过32字节,它是否保存在2个存储槽中?坚固性

    amazon-web-services - apt-get 在 docker-container 上超时

    video-streaming - "holy trinity"(以太坊、Swarm 和 Whisper)是否支持多媒体流?

    blockchain - 如何使用 Quorum 进行智能合约存储迁移?

    node.js - 如何根据日期范围过滤 web3 事件?

    hadoop - Hadoop Namenode HA 和 HDFS federation 之间有什么区别