

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 HTTP REST 端点连接到 Neptune 数据库实例
<a name="access-graph-sparql-http-rest"></a>

**注意**  
Neptune 目前不支持 HTTP/2 来处理 REST API 请求。客户端在连接到端点时必须使用 HTTP/1.1。

以下说明将带您演练使用 **curl** 命令、通过 HTTPS 的连接以及使用 HTTP 语法来连接到 SPARQL 终端节点。从与您的 Neptune 数据库实例位于同一虚拟私有云 (VPC) 中的 Amazon EC2 实例中按照这些说明操作。

针对 Neptune 数据库实例的 SPARQL 查询的 HTTP 端点为 `https://your-neptune-endpoint:port/sparql`。

**注意**  
有关查找 Neptune 数据库实例的主机名的信息，请参阅[连接到 Amazon Neptune 端点](feature-overview-endpoints.md)部分。

Amazon Neptune 为 SPARQL 查询提供 HTTP 端点。REST 接口与 SPARQL 版本 1.1 兼容。

**使用 HTTP POST 的查询**  
以下示例使用 **curl** 通过 HTTP **POST** 提交 SPARQL **`QUERY`**。

```
curl -X POST --data-binary 'query=select ?s ?p ?o where {?s ?p ?o} limit 10' https://your-neptune-endpoint:port/sparql
```

前面的示例使用限制为 10 的`?s ?p ?o`查询，返回图中最多 10 个三元组 (subject-predicate-object)。要查询其他内容，请将其替换为其他 SPARQL 查询。

**注意**  
对于 `SELECT` 和 `ASK` 查询，响应的默认 MIME 媒体类型为 `application/sparql-results+json`。  
对于 `CONSTRUCT` 和 `DESCRIBE` 查询，响应的默认 MIME 类型为 `application/n-quads`。  
有关 Neptune 用于序列化的媒体类型列表，请参阅[Neptune SPARQL 使用的 RDF 序列化格式](sparql-media-type-support.md#sparql-serialization-formats)。

**使用 HTTP POST 的更新**  
以下示例使用 **curl** 通过 HTTP **POST** 提交 SPARQL **`UPDATE`**。

```
curl -X POST --data-binary 'update=INSERT DATA { <https://test.com/s> <https://test.com/p> <https://test.com/o> . }' https://your-neptune-endpoint:port/sparql
```

上述示例将以下三元组插入 SPARQL 默认图形中：`<https://test.com/s> <https://test.com/p> <https://test.com/o>`