需要身份验证的Lua和API(Wordnik)

时间:2011-08-28 04:32:15

标签: json api lua

我一直试图解决这个问题,我不能。我使用一个程序(CMUD),其中我广泛使用Lua脚本语言进行数据挖掘。我编写的脚本使用他们的API(不需要身份验证)从wunderground.com收集天气信息,并且我使用数据挖掘urbandictionary.com获取俚语术语。现在我正在尝试利用Wordnik的json解析器来返回单词的定义。但是,我对API很新,虽然我对Lua有了很好的把握,但我仍然是新手。因此,我转向你,寻求我迫切需要的答案。

根据Wordnik API文档,验证用户的正确方法是使用以下URL:

http://api.wordnik.com/v4/account.{format}/{username}?password={password}

{format}可以是xml或json,但我更喜欢json。使用:

print(http.request("http://api.wordnik.com/v4/account.json/username?password=password"))

返回“未经授权”的错误。使用:

r,c = http.request{ url = "http://api.wordnik.com/v4/account.json/username?password=password", headers = {api_key = "MY_API_KEY"}}

返回r = 1且c = 401。

我对如何通过我使用的程序验证自己并通过Lua使用Wordnik的API感到非常困惑。任何帮助将不胜感激!或者,如果你知道任何返回json格式的字典,我也会很感激这些建议!

为澄清目的:

我希望能够检索单词定义的json格式。执行直接API调用似乎不起作用,并且似乎确实需要登录(或验证)。

2 个答案:

答案 0 :(得分:5)

哎呀,对esperluette的反应稍作修正。 “条目”api不适用于标准开发人员API密钥。请试试这个:

http://api.wordnik.com/v4/word.json/mustard/definitions?api_key=YOUR_API_KEY

请注意,http://developer.wordnik.com/docs中显示的所有内容都应该可供您使用。您还可以在请求标头中传递api_key(首选方法)。

答案 1 :(得分:2)

我不确定您在此尝试做什么 - 您是在尝试对Wordnik用户进行身份验证,还是在尝试调用定义?您可以通过API调用Wordnik定义而无需“登录”为Wordnik用户,只需使用您的API密钥即可。

如果您只想要定义的json结果,可以尝试此调用(对于'mustard'一词):

http://api.wordnik.com/v4/word.json/mustard/entries?api_key=YOUR_API_KEY

你玩过developer.wordnik.com/docs吗?

我希望这有用,我对Lua一无所知。 : - )

相关问题