1

我根本没有使用 cURL 的经验,但据我所知,它相当于 cfhttp。

我想使用 Instagram API 并对用户进行身份验证。他们的示例使用 cURL。

curl \-F 'client_id=CLIENT-ID' \
    -F 'client_secret=CLIENT-SECRET' \
    -F 'grant_type=authorization_code' \
    -F 'redirect_uri=YOUR-REDIRECT-URI' \
    -F 'code=CODE' \https://api.instagram.com/oauth/access_token

我认为 CF 版本是正确的:

<cfhttp url="https://api.instagram.com/oauth/access_token" method="post" resolveurl="true">
    <cfhttpparam type="formField" name="client_id" value="CLIENT-ID" />
    <cfhttpparam type="formField" name="client_secret" value="CLIENT-SECRET" />
    <cfhttpparam type="formField" name="grant_type" value="authorization_code" />
    <cfhttpparam type="formField" name="redirect_uri" value="YOUR-REDIRECT-URI" />
    <cfhttpparam type="formField" name="code" value="code" />
</cfhttp>

我还不能尝试这个,因为直到很久以后我才会在我的开发机器上,所以我现在只是在四处寻找可能性并制作伪代码(未经测试!)。

任何对 Instagram API 和 ColdFusion 有特定经验的人,如果能从中获得一些见解,我们将不胜感激。

我正在使用Railo。

4

1 回答 1

7

According to how to use cURL the -F option is form data.

http://curl.haxx.se/docs/manpage.html

So you're going to want to send form data, not url data in your cfhttpparam tags.

<cfhttp url="https://api.instagram.com/oauth/access_token" method="post" resolveurl="true">
    <cfhttpparam type="formField" name="client_id" value="CLIENT-ID" />
    <cfhttpparam type="formField" name="client_secret" value="CLIENT-SECRET" />
    <cfhttpparam type="formField" name="grant_type" value="authorization_code" />
    <cfhttpparam type="formField" name="redirect_uri" value="YOUR-REDIRECT-URI" />
    <cfhttpparam type="formField" name="code" value="code" />
</cfhttp>

I don't know anything about the Instagram API and only what I read in the above link about cURL so this may not be the complete solution but it looks like you're on the right track.

于 2012-10-30T12:13:06.737 回答