Created
November 29, 2012 14:37
-
-
Save kysnm/4169485 to your computer and use it in GitHub Desktop.
Play 2.0 / Scala の WS で同期リクエスト ref: http://qiita.com/items/bcb41ebfb5818a5a0305
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package models | |
import play.api.libs.ws.WS.WSRequestHolder | |
import play.api.libs.ws.WS.url | |
import play.api.libs.concurrent.Promise | |
import play.api.libs.ws.Response | |
object Qiita { | |
def getTags = { | |
val wsRequestHolder: WSRequestHolder = url("https://qiita.com/api/v1/tags") | |
val promiseResponse: Promise[Response] = wsRequestHolder.get() | |
val response = promiseResponse.await.get | |
println("HTTP status code: " + response.status) | |
println("HTTP body: " + response.body) | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ play console | |
[info] Loading project definition from /private/tmp/todolist/project[info] Set current project to todolist (in build file:/private/tmp/todolist/)[info] Compiling 1 Scala source to /private/tmp/todolist/target/scala-2.9.1/classes...[info] Starting scala interpreter...[info] | |
Welcome to Scala version 2.9.1.final (Java HotSpot(TM) 64-Bit Server VM, Java 1.6.0_35). | |
Type in expressions to have them evaluated. | |
Type :help for more information. | |
scala> new play.core.StaticApplication(new java.io.File(".")) | |
[info] play - database [default] connected at jdbc:postgresql://localhost:5432/todolist | |
[info] play - Application started (Prod) | |
res0: play.core.StaticApplication = play.core.StaticApplication@4b9e2380 | |
scala> models.Qiita.getTags | |
HTTP status code: 200 | |
HTTP body: [{"name":"Qiita","url_name":"Qiita","icon_url":"http://qiita.com/system/tags/icons/000/000/001/thumb/favicon.png?1320171109","follower_count":2416,"item_count":189},{"name":"Java","url_name":"Java","icon_url":"http://qiita.com/system/tags/icons/000/000/002/thumb/Java-Runtime-Environment-V6.0.260.png?1316130938","follower_count":2382,"item_count":183},{"name":"Ruby","url_name":"Ruby","icon_url":"http://qiita.com/system/tags/icons/000/000/003/thumb/ruby.jpeg?1316130908","follower_count":3222,"item_count":920},{"name":"Python","url_name":"Python","icon_url":"http://qiita.com/system/tags/icons/000/000/004/thumb/search.gif?1316130880","follower_count":1840,"item_count":238},{"name":"Perl","url_name":"Perl","icon_url":"http://qiita.com/system/tags/icons/000/000/005/thumb/imgres.jpeg?1316130753","follower_count":1085,"item_count":98},{"name":"PHP","url_name":"PHP","icon_url":"http://qiita.com/system/tags/icons/000/000/006/thumb/PHP.png?1338128905","follower_count":3043,"item_count":492},{"name":"Emacs","url_name":"Emacs","icon_url":"http://qiita.com/system/tags/icons/000/000/007/thumb/emacs.jpeg?1316130821","follower_count":1376,"item_count":195},{"name":"Vim","url_name":"Vim","icon_url":"http://qiita.com/system/tags/icons/000/000/008/thumb/vim-editor_logo.png?1316130850","follower_count":2664,"item_count":219},{"name":"ShellScript","url_name":"ShellScript","icon_url":"http://qiita.com/system/tags/icons/000/000/009/thumb/shellscript.png?1316130734","follower_count":1526,"item_count":127},{"name":"C","url_name":"C","icon_url":"http://qiita.com/system/tags/icons/000/000/010/thumb/C.png?1318001428","follower_count":1316,"item_count":64},{"name":"C++","url_name":"C%2B%2B","icon_url":"http://qiita.com/system/tags/icons/000/000/011/thumb/203px-Gccegg.png?1328941397","follower_count":1355,"item_count":101},{"name":"Objective-C","url_name":"Objective-C","icon_url":"http://qiita.com/system/tags/icons/000/000/012/thumb/objc.png?1316167122","follower_count":2360,"item_count":320},{"name":"HTML","url_name":"HTML","icon_url":"http://qiita.com/system/tags/icons/000/000/013/thumb/110126-HTML5_Logo.png?1316130376","follower_count":4126,"item_count":100},{"name":"CSS","url_name":"CSS","icon_url":"http://qiita.com/system/tags/icons/000/000/014/thumb/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Nuvola_mimetypes_source_css.png?1316130407","follower_count":3654,"item_count":140},{"name":"JavaScript","url_name":"JavaScript","icon_url":"http://qiita.com/system/tags/icons/000/000/015/thumb/images.jpeg?1316130454","follower_count":5002,"item_count":668},{"name":"CoffeeScript","url_name":"CoffeeScript","icon_url":"http://qiita.com/system/tags/icons/000/000/016/thumb/coffeescript_logo.png?1316130584","follower_count":1642,"item_count":74},{"name":"Haskell","url_name":"Haskell","icon_url":"http://qiita.com/system/tags/icons/000/000/017/thumb/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Haskell-Logo.png?1316130328","follower_count":764,"item_count":137},{"name":"Scheme","url_name":"Scheme","icon_url":"http://qiita.com/system/tags/icons/000/000/018/thumb/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Lambda_lc.png?1316130303","follower_count":493,"item_count":46},{"name":"iPhone","url_name":"iPhone","icon_url":"http://qiita.com/system/tags/icons/000/000/019/thumb/k1014925770.jpeg?1316130246","follower_count":3252,"item_count":176},{"name":"Android","url_name":"Android","icon_url":"http://qiita.com/system/tags/icons/000/000/020/thumb/android_logo.gif?1316130200","follower_count":2573,"item_count":222}] | |
scala> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment