3

我正在尝试使用“Shiny”服务器上“httr”库中的 OAuth 连接到 LinkedIn API。我已经包装了来自GitHub/hadley/httr的本地工作 OAuth 示例,带有闪亮的客户端 ui 和服务器端。我让客户端 ui 工作。

library(shiny)

shinyUI(pageWithSidebar( 
  sidebarPanel (
  textInput("userEmail", "Your email address:", value =""),
  submitButton("Grant Permission")
  ),
  mainPanel()
))

但是,服务端不会打开浏览器进行身份验证。

library(shiny)
library(httr)

shinyServer(function(input, output) {

  output$GrantPermission <- reactive ({

    linkedin <- oauth_endpoint("requestToken", "authorize", "accessToken", base_url = "https://api.linkedin.com/uas/oauth/")

    myapp <- oauth_app("linkedin", key = "abc", secret = "def")

    token <- oauth1.0_token(linkedin, myapp)

    sig <- sign_oauth1.0(myapp, token$oauth_token, token$oauth_token_secret)

    save.image(paste(input$userEmail, ".RData"))
  })
})

会话信息:R 版本:2.15.3 平台:x86_64-pc-linux-gnu 包:httr_0.2;闪亮_0.8.0.99。

关于可能是什么问题的任何线索?

4

1 回答 1

4

我想我对 oAuth 和 twitteR 也有类似的问题。它原来是一个 SSL 问题,并通过添加以下内容得到解决:

require(RCurl) 
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl")))
于 2013-11-15T07:53:47.473 回答