首页
学习
活动
专区
圈层
工具
发布

在以太坊上构建 GraphQL API

在传统网络上,这是数据库在中心化技术栈中所做的工作,但在Web3 栈[9]中缺少索引层。...在传统的 web 堆栈中,数据库、服务器和 api 在将数据返回到应用程序(通常是通过某种 http 请求)之前,会对数据进行查询、筛选、排序、分页、分组和连接。...过去,开发人员通过建立自己的中心化索引服务器来解决这个问题——从区块链中提取数据,存储在数据库中,然后通过 API 公开。这需要大量的工程和硬件资源,并破坏了去中心化的重要的安全特性。...这些协议[12]通常分布在多个节点(服务器)上,使任何希望成为网络一部分并提供服务的人都能参与。...构建在 The Graph 之上 本文中,我们将研究这样一个协议:The Graph[15],以及如何使用存储在以太坊区块链中的数据来构建和部署自己的 GraphQL API。

2.3K90
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用 Java @Annotations 构建完整的 Spring Boot REST API

    本文旨在演示用于构建功能性 Spring Boot REST API 的重要 Java @annotations。Java 注解的使用使开发人员能够通过简单的注解来减少代码冗长。...这允许 Java 虚拟机在运行时保留注释并通过反射读取。对注解的支持从版本 5 开始,允许不同的 Java 框架采用这些资源。 注释也可以在 REST API 中使用。...在论文中,他提出了客户端和服务器之间应该分开的六项原则;客户端和服务器之间的通信应该是无状态的;它们之间可以存在多个层次结构;服务器响应必须声明为可缓存或不可缓存;其接口的统一性必须基于客户端、服务器和中间组件之间的所有交互...3 Swagger UI 配置中的 Java @Annotations 文档是任何项目的一个重要方面,因此我们的 REST API 使用 Swagger-UI 进行记录,这是许多标准元数据之一。...Swagger 是用于创建交互式 REST API 文档的规范和框架。它使文档能够与对 REST 服务所做的任何更改保持同步。它还提供了一组工具和 SDK 生成器,用于生成 API 客户端代码。

    4.8K20

    在CentOS上搭建PHP服务器环境

    httpd-devel 配置系统让 Apache 随系统启动: chkconfig --levels 235 httpd on 配置完毕,启动apache: /etc/init.d/httpd start 此时输入服务器的...IP地址,应该看到apache的服务页面,端口不用输,apache默认就是使用80端口 注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了...安装php yum install php php-devel 重启apache使php生效 /etc/init.d/httpd restart 此时可以在目录:/var/www/html/下建立一个PHP...> 然后访问这个文件,就能看到PHP的一些信息,php.ini配置文件的路径可以在这个页面上看到 安装php的扩展 yum install php-mysql php-gd php-imap php-ldap...php-odbc php-pear php-xml php-xmlrpc 安装完扩展之后需要再次重启apache /etc/init.d/httpd restart

    2.9K20

    在CentOS上搭建PHP服务器环境

    httpd-devel 配置系统让 Apache 随系统启动: chkconfig --levels 235 httpd on 配置完毕,启动apache: /etc/init.d/httpd start 此时输入服务器的...IP地址,应该看到apache的服务页面,端口不用输,apache默认就是使用80端口 注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS 自带的防火墙禁止了...安装php yum install php php-devel 重启apache使php生效 /etc/init.d/httpd restart 此时可以在目录:/var/www/html/下建立一个PHP...> 然后访问这个文件,就能看到PHP的一些信息,php.ini配置文件的路径可以在这个页面上看到 安装php的扩展 yum install php-mysql php-gd php-imap php-ldap...php-odbc php-pear php-xml php-xmlrpc 安装完扩展之后需要再次重启apache /etc/init.d/httpd restart

    3.2K60

    在CentOS上搭建PHP服务器环境

    配置系统让 Apache 随系统启动: chkconfig --levels 235 httpd on 配置完毕,启动apache: /etc/init.d/httpd start 此时输入服务器的...IP地址,应该看到apache的服务页面,端口不用输,apache默认就是使用80端口 注意,如果其他机器访问这台服务无法显示这个页面,而直接在这台服务器上可以访问的话,一般情况下是 CentOS...安装php yum install php php-devel 重启apache使php生效 /etc/init.d/httpd restart 此时可以在目录:/var/www/html/下建立一个...> 然后访问这个文件,就能看到PHP的一些信息,php.ini配置文件的路径可以在这个页面上看到 安装php的扩展 yum install php-mysql php-gd php-imap...php-ldap php-odbc php-pear php-xml php-xmlrpc 安装完扩展之后需要再次重启apache /etc/init.d/httpd restart

    3K60

    在Windos 2003服务器上安装IIS+PHP+MYSQL

    ,注意,文件路径中不能有空格、中文,也最好不要有特殊字符   添加环境变量,在path里后添加 D:\php; 增加系统变量,名为PHPRC,值为php文件路径,如d:/php   把php.ini-recommended...5、把libmysql.dll和php5ts.dll放到c:/window/system32目录里 6、在iis里右键“网站”,选择“属性”,进入“ISAPI筛选器”标签里找到并点击“添加”按钮,在弹出的...,找到并点击“配置”按钮,在弹出的“应用程序配置”窗口中找到并点击“添加”按钮,在弹出的窗口中新增一个 扩展名映射,扩展名为 .php ,单击“浏览”将可执行文件指向 php5isapi.dll所在路径...其他设置基本上一路下一步就行。...补丁,卸载完后重启服务器,这步操作是防止网站常出现不能连接MYSQL,刷新又会正常的问题 14、配置asp则需要安装.net framework 2.0,如果服务器上要安装sql2005,则先安装sql2005

    3.4K20

    在腾讯云轻量服务器上通过Docker部署Nginx Unit部署PHP应用

    0x001 简介在上一期我们介绍了在腾讯云轻量服务器通过Nginx Unit来部署PHP应用的方式,同时Nginx Unit也是支持以docker方式部署运行的,本期我们将介绍通过docker镜像的方式来部署部署...docker进行推送到腾讯云容器镜像服务,即可在其他的服务器上拉取镜像进行部署。...下面我将演示在另外一台轻量服务器上拉取镜像并进行部署sudo docker pull ccr.ccs.tencentyun.com/tusdasa/thinkphp-unit:6.0 # 这里要改成自己的如下即拉取完毕运行镜像...ccr.ccs.tencentyun.com/tusdasa/thinkphp-unit:6.0sudo docker ps -a访问端口验证正常,此处可参考上运行本地镜像部分,此处不在赘述0x007 总结本文解释了如何在腾讯云轻量服务器上构建一个...Nginx Unit的PHP堆栈镜像,并推送腾讯云镜像服务中,并在另外一台服务器上拉取镜像实现一次构建,到处部署。

    1.2K50

    PHP4在WinXP下IIS和Apache2服务器上的安装实例

    既然这么多朋友需要,我就以最常见的IIS和Apache服务器为例,把PHP在WindowsXP下的安装过程写出来吧,希望能对要安装PHP的朋友有点帮助。...可以这样来区别:在CGI模式下,如果客户机请求一个php文件,Web服务器就调用php.exe去解释这个文件,然后再把解释的结果以网页的形式返回给客户机;而在模块化中,PHP是与Web服务器一起启动并运行的...二、软件准备:    正所谓"工欲善其事 必先利其器",要想在你的机器上运行PHP得首先准备需要的软件。   ...(一)WEB服务器    首先你需要一要WEB服务器来支持PHP的运行,这里我们选择两种最常见的、也是用的最多的两种服务器来分别介绍。   ...打开刚才解压的PHP目录,你会发现有一个叫做"php.ini-dist"的文件,这就是PHP的配置文件了,你需要把它改名成"php.ini",然后复制到系统目录中(如果你的系统装在C盘,XP下就是"C:

    1.6K00

    用 Cricket 在 Java 环境里构建极简的内容管理服务器

    微服务概念的出现让我们很自然地产生了对快速构建原型和减少系统资源需求的期望,而 Cricket 微网站平台的出现便在某种意义上响应了这种期望。...API 来调用。...用 Cricket 来构建 CMS 内容管理系统(CMS,或者叫 WCM,即 Web 内容管理)简化了对网站内容的管理,能帮助我们在不用理会它的布局的前提下修改显示在网站里面的内容。...在接收到对指定文件的特定路径的 GET 请求时,服务器会首先搜索标识符(UID)里的路径参数与给定路径相同的 FILE 或 CODE 类型的文档。...结果 若上述的所有步骤均已完成,那么我们就可以在 http://127.0.0.1:8080 上看到我们的成果: [97z1zvjboj.png] 7.

    1.7K50

    在 Ubuntu 14.10 Server 上安装 Jetty 9(Java服务引擎和Web服务器)

    Jetty被广泛用于多种项目和产品,都可以在开发环境和生产环境中使用。Jetty可以很容易地嵌入到设备、工具、框架、应用服务器以及集群中。更多用途可参见Jetty网页。...Jetty特性 全功能并基于标准 开源与商用两可 灵活和可扩展 小足迹 可嵌入 异步支持 企业弹性扩展 Apache和Eclipse双重许可证 Ubuntu 14.10 server上安装Jetty 9...先决条件 在安装Jetty服务器前,您需要通过以下命令安装Java sudo apt-get install openjdk-8-jdk Java将会安装到/usr/lib/jvm/java-8-openjdk-i386...,同时在该目录下会创建一个名为java-8-openjdk-i386的符号链接,在/usr/bin/java下也会相应创建符号链接。...Jetty现在应该运行在8085端口,打开浏览器并访问http://服务器IP:8085,你应该可以看到Jetty屏幕。

    78320

    运营数据库系列之应用支持

    您可以开发可用于创建表,插入数据的Java应用程序。本机Java客户端API提供了编程访问。 语言支持 除了Java和C#,运营数据库还允许您使用各种编程语言来构建应用程序。...以下是受支持的语言: • C • C ++ • Groovy • Python • Scala • Jython • PHP • REST for API支持 开放数据库连接(ODBC...REST API访问 您可以使用Apache HBase REST服务器与OpDB进行交互。如果您不想使用Java API,这是一个很好的选择。使用URL和REST API进行交互。...您可以配置SSL以在客户端和REST服务器之间进行加密。...使用REST服务器还可以跨网络访问数据。例如,如果您的OpDB在“专用网络”中运行并且不想将其公开给公司的“公共网络”,则REST服务器可以充当“专用”网络和“公共”网络之间的“网关” 。

    2.1K00

    5 个开源的 Java IDE 工具

    这些框架是为了在各种服务器环境上运行各种应用程序而设计开发的;这包括解析注解、扫描描述符、加载配置以及在 Java 虚拟机(JVM)上启动实际的服务等方面的动态行为。...在笔记本电脑上安装 BlueJ IDE 后,启动一个新项目,点击 项目(Project)菜单中的 新项目(New Project),然后从创建一个 新类(New Class)开始编写 Java 代码。...可以在这里下载;然后你可以创建一个新的项目或从本地目录导入一个现有的项目。在本文中找到更多 Java 开发技巧。...IntelliJ IDEA CE 在有经验的开发人员中也非常受欢迎,可以用它来对现有源码进行重构、代码检查、使用 JUnit 或 TestNG 构建测试用例,以及使用 Maven 或 Ant 构建代码。...例如,如果你用 Java 框架实现了一个 REST API,IntelliJ IDEA CE 允许你通过 Swing GUI 设计器来测试 API 的功能。

    5K20

    5 个开源的 Java IDE 工具

    这些框架是为了在各种服务器环境上运行各种应用程序而设计开发的;这包括解析注解、扫描描述符、加载配置以及在 Java 虚拟机(JVM)上启动实际的服务等方面的动态行为。...在笔记本电脑上安装 BlueJ IDE 后,启动一个新项目,点击 项目(Project)菜单中的 新项目(New Project),然后从创建一个 新类(New Class)开始编写 Java 代码。...可以在这里下载;然后你可以创建一个新的项目或从本地目录导入一个现有的项目。在本文中找到更多 Java 开发技巧。...IntelliJ IDEA CE 在有经验的开发人员中也非常受欢迎,可以用它来对现有源码进行重构、代码检查、使用 JUnit 或 TestNG 构建测试用例,以及使用 Maven 或 Ant 构建代码...例如,如果你用 Java 框架实现了一个 REST API,IntelliJ IDEA CE 允许你通过 Swing GUI 设计器来测试 API 的功能。

    2.3K30

    我为什么要放弃RESTful,选择拥抱GraphQL

    GraphQL本质上是一种基于api的查询语言,现在大多数应用程序都需要从服务器中获取数据,这些数据存储可能存储在数据库中,API的职责是提供与应用程序需求相匹配的存储数据的接口。...直连数据库的接入 集成现有服务的GraphQL层:这种配置适合于旧服务的改造,尤其是在涉及第三方服务时、依然可以通过原有接口进行交互。...服务端实现 在服务端, GraphQL 服务器可用任何可构建 Web 服务器的语言实现。...有以下语言的实现供参考: C# / .NET Clojure Elixir Erlang Go Groovy Java JavaScript Julia Kotlin Perl PHP Python R...Hasura:一个 BaaS(后端即服务),允许你在 Postgres 上创建数据表、定义权限并使用 GraphQL 接口查询和操作。

    3K40
    领券