[英]Ruby on Rails, taking data from Graphql and posting on it to Facebook-messenger
$message_text = message.text
module STAPI
HTTP = GraphQL::Client::HTTP.new("API_ADDRESS")
Schema = GraphQL::Client.load_schema(HTTP)
Client = GraphQL::Client.new(schema: Schema,execute: HTTP)
end
module Sticker
Query = STAPI::Client.parse <<-'GRAPHQL'
{
stickers(query: "#{$message_text}", first: 21, after: "") {
edges {
node {
fileUrl(fullWatermarked: true)
}
}
}
}
GRAPHQL
end
result = STAPI::Client.query(Sticker::Query)
首先,这是一个Messenger机器人,通过Messenger机器人,我可以接收用户输入,然后在数据库中搜索输入,然后发布与输入有关的内容。
因此,在代码中我无法搜索,因为我认为query: "#{$message_text}"
已损坏。
我接受用户输入message.text
。 该输入类似于此“ Hello”(带有')。 但是我需要query: "#{$message_text}"
这样的“ Hello”(带有“) query: "#{$message_text}"
部分。如何给messenger.text查询这样的“ Hello”
我相信您已经知道如何根据其他问题中的内容进行这项工作。 对于其他面临相同问题的人,请看一下variables 。 您的示例将如下所示:
$message_text = message.text
module STAPI
HTTP = GraphQL::Client::HTTP.new("API_ADDRESS")
Schema = GraphQL::Client.load_schema(HTTP)
Client = GraphQL::Client.new(schema: Schema,execute: HTTP)
end
module Sticker
Query = STAPI::Client.parse <<-'GRAPHQL'
query Q($message: String) {
stickers(query: $message, first: 21, after: "") {
edges {
node {
fileUrl(fullWatermarked: true)
}
}
}
}
GRAPHQL
end
result = STAPI::Client.query(Sticker::Query, variables: {message_text: $message_text})
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.