2
我通過數據源使用Goodreads API。我使用ISBN號搜索,如果有任何結果,它會返回結果。這裏是什麼樣子,如果這本書被發現:如何判斷pick()的結果是否是字符串
<GoodreadsResponse>
<Request>
<authentication>true</authentication>
<key><![CDATA[--redacted--]]></key>
<method><![CDATA[api_book_url]]></method>
</Request>
<book id="6558055">
<title><![CDATA[Mythical Man-Month, The: Essays on Software Engineering, Anniversary Edition]]></title>
<isbn><![CDATA[]]></isbn>
<link>http://www.goodreads.com/book/show/6558055-mythical-man-month-the?utm_medium=api&utm_source=book_link</link>
</book>
</GoodreadsResponse>
如果沒有找到這本書,這將是除了<book>
部分不存在一樣。一旦這個XML已經被KRL解析,你可以想象JSON的樣子。
我pick()
荷蘭國際集團的link
標籤了這樣的迴應:
url = data.pick("$..link.$t");
如果有<book>
部分,即工作得很好; url
將是一個字符串。但是如果沒有<book>
部分,url
將是一個空數組([]
)。
如果url
是字符串,我只希望我的規則中的操作能夠運行。我嘗試過使用諸如if url != [] then
或url.length()
(它總是爲零),但這些都不起作用。
如何知道url
是字符串還是空數組?