Wrapping a call to the Twitter user lookup API with ColdFusion
This post is more than 2 years old.
I just wrote a quick UDF (available now on CFLib) that wraps the call to Twitter's user look up system. Like most Twitter APIs, this one is ridiculously simple, but I need this code for another project I'm working on (technically I need it in Flex, but the ColdFusion version helps me understand how I'll write that) so I thought I'd write it up real quick like. Here is getTwitterUser:
</cffunction><cffunction name="getTwitterUser" output="false" returnType="struct"> <cfargument name="screenname" type="string" required="true"> <cfset var httpResult = "">
<!--- remove the @ if they included it. --->
<cfif left(arguments.screenname,1) is "@">
<cfset arguments.screenname = right(arguments.screenname, len(arguments.screenname)-1)>
</cfif>
<cfset var theUrl = "http://api.twitter.com/1/users/show.json?screen_name=#arguments.screenname#">
<cfhttp url="#theUrl#" result="httpResult">
<cfset var result = deserializeJSON(httpResult.filecontent)>
<cfreturn result>
I'd rather that be in script to be honest, but that wouldn't be difficult to rewrite. Usage then is pretty trivial. If you ask for a user that exists, you get a large structure back. If you get one that does not, you get an error key in the struct. Here's example code:
<cfdump var="#getTwitterUser('cfjedimaster221920')#"><cfset res = getTwitterUser("cfjedimaster")> <cfif structKeyExists(res, "name") and structKeyExists(res, "profile_image_url")> <cfoutput> <p> <img src="#res.profile_image_url#" align="left"> #res.name# <br clear="left"> </p> </cfoutput> </cfif>
And the result...
Comments