我有一个rest API,它是graphql API的代理。在将查询发送到实际的graphql API之前,我需要更新过滤器对象。
test_query = { "query": "{ \
viewer { \
socks(filter: {sockId:'12345'}) { \
colorGroups( \
limit: 10000, \
filter: { \
datetime_gt: '2019-02-13T00:00:00Z', \
datetime_lt: '2019-02-20T00:00:00Z'}, \
orderBy: [datetime_ASC]) { \
size, \
brand \
} \
} \
} \
}"}
在这种情况下,我需要像这样更新“ socks”节点上的过滤器:
socks(filter: {sockId:'12345'})
需要是
socks(filter: {sockId:'actual sock id'})
对此有何建议?我知道我可以使用一些graphql库。以前,我试图强迫用户发送{sockId: $sockId}
,只是将正确的值添加到变量对象中。我还尝试过使用正则表达式将用户发送的值分配给sockId,但这已被证明是一种限制。
答案 0 :(得分:0)
这是您所拥有的JSON(可以使用JSON.parse),但是我将创建一个查询对象,对其进行修改,然后使用JSON.stringify(object)。
如果您想坚持使用字符串,请使用字符串插值和变量:str =`here'$ {war}'我确实具有变量war的值。