所以我能够从一个api获取值,但我无法获得第二个值,即货币转换率(来自完全不同的来源)。我在下面粘贴了我的代码,非常感谢任何帮助。
set json to (do shell script "curl https://www.bitstamp.net/api/v2/ticker/xrpusd")
tell application "JSON Helper"
set result to read JSON from json
set price to |last| of result as number
end tell
set json to (do shell script "curl https://api.fixer.io/latest?symbols=INR")
tell application "JSON Helper"
set result to read JSON from json
set inr to |INR| of result as number
end tell
set result_string to "₹" & price * inr & ""
答案 0 :(得分:0)
如果我在浏览器中打开第二个URL,这里是返回的JSON(格式化以便于阅读):
{"base":"EUR",
"date":"2018-02-05",
"rates":{
"INR":79.744
}
}
INR
值位于rates
值内。因此,您需要像这样引用它:
set inr to (INR of rates of result) as number
我认为没有任何理由将INR
括在竖条中,因为没有冲突的AppleScript命令或具有该名称的变量。您甚至可以将inr
定义为用户定义的变量,AppleScript将能够区分您引用INR of rates
时的引用时间。
但是,result
是一个预定义的AppleScript属性,所以我会避免以你拥有的方式使用它。你能做的就是改变这一行:
set result to read JSON from json
到此:
read JSON from json
并保持后续行不变(我从上面建议的修正)。现在,您将正确使用AppleScript result
属性。