使用Python3如何添加token

import requests
import json

#url of the REST end point of the installed query hello
#It is in this general format http://server_ip:9000/query/graphname/queryname
url =“http://localhost:9000/query/social/hello
#query parameters
params = {“p”: “MRAAA”}
#invoke the REST call
response = requests.request(“GET”, url, params=params, auth=(‘tigergraph’, ‘tigergraph’),headers={“Authorization”: "Bearer " + token})
#put the response in a JSON object
todos = json.loads(response.text)
#output the JSON
print (json.dumps(todos, indent=2))

请参考https://github.com/dingmaotu/gsql_client

restpp.query(“query/social”, “hello_csv”,param1 = {“p”: “MRAAA”})
用这个获取数据为啥老报Paramater p is null
hello_csv如下:
CREATE QUERY hello_csv(VERTEX p) FOR GRAPH social{
Start = {p};
file1 ("/home/tigergraph/printExampleFile.csv");
Result = SELECT tgt
FROM Start:s-(friendship:e) ->person:tgt;
PRINT Result TO_CSV file1;
}

为什么是“query/social”?不应该是“social”吗?

填social会报另外的错:
endpoint not found from url=/social/hello_csv please use GET /endpoints to list all valid endpoints
另外这个 GET /endpoints 命令怎么用

可以先用curl测试一下,比如

curl "http://localhost:9000/query/social/hello_csv?p="MRAAA"&p.type=person" | jq

看看是否成功。
你的情况有可能是因为vertex没有指定type引起的。

有没有gsql_client这个包的完整api

这个curl是可以的,没有指定type也可以,不过返回的数据只有一个值,不是数据列

可以参看下https://github.com/dingmaotu/gsql_client,这是我们的一个客户开发的,代码很少,直接看源代码就可以了。

测试过query吗?

query如上,可以查询数据

query执行的结果应该跟curl的结果,以及python调用restpp的结果一致的。

如何用gsql_client进行加载CSV数据?

可以通过定义loading job然后执行loading job。

有没有直接操作的方式,因为我要做成调度脚本,能否在脚本里直接实现

gsql_client中有直接调用gsql文件或者直接执行一条gsql命令的接口。参考https://github.com/dingmaotu/gsql_client中的以下两行:

res = client.command("ls")  # also returns the result as a list of lines
client.run_file("yourfile.gsql")

如何在client中指定graph?client.command(“use graph social”) 似乎没有效果

先执行

client.command(“use graph social”)

后执行

client.command(“ls”)

显示的是图social的信息吗?

不是,是所有的图信息都有

请使用以下代码:

client.use("social")

更多请参考https://github.com/dingmaotu/gsql_client/blob/master/gsql_client/gsql.py提供的各个函数。