小编fan*_*fan的帖子

适用于iOS的Facebook SDK v4.0 - 未设置FBSDKProfile currentProfile

我刚刚将我的Facebook SDK"升级"为我的iOS应用程序的4.0.

我已经让登录工作正常,但是,根据文档,我现在应该FBSDKProfile.currentProfile()用来访问个人资料信息.

但是,这个值似乎总是nil,即使我的个人资料图片正在显示(通过a FBSDKProfilePictureView)而我FBSDKAccessToken.currentAccessToken()的不是nil.

这是我的登录信息 ViewController:

import UIKit

class LoginViewController: UIViewController, FBSDKLoginButtonDelegate {

    @IBOutlet weak var fbLoginButton: FBSDKLoginButton!
    @IBOutlet weak var fbProfilePicture: FBSDKProfilePictureView! //displays a picture

    override func viewDidLoad() {
        super.viewDidLoad()
        self.fbLoginButton.delegate = self
        FBSDKProfile.enableUpdatesOnAccessTokenChange(true)
        if FBSDKAccessToken.currentAccessToken() != nil {
            println("\(FBSDKAccessToken.currentAccessToken().userID)") //works
        }
        self.fbLoginButton.readPermissions = ["public_profile", "email", "user_friends"]
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

    func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
        println(FBSDKProfile.currentProfile()) //is nil
    }

    func loginButtonDidLogOut(loginButton: …
Run Code Online (Sandbox Code Playgroud)

ios facebook-sdk-4.0 swift

19
推荐指数
5
解决办法
1万
查看次数

GitLab-CI和node.js-如何启动本地服务器然后运行测试?

我已经设置了GitLab-CI,并且正在编写我的代码.gitlab-ci.yml来运行测试。我的应用程序是用node.js编写的,文件如下所示:

before_script:
  - npm install
  - node server.js

stages:
  - test

job_name:
  stage: test
  script:
    - npm run test
Run Code Online (Sandbox Code Playgroud)

我在启动服务器然后运行测试时遇到了麻烦,因为node server.js创建了一个前台进程,除非您手动执行,否则它永远不会存在。有没有一种方法可以启动服务器,然后继续运行,然后在测试完成后将其停止?

还是我实际上做错了,我的服务器应该自己开始进行测试吗?我读过的所有内容都只是说“然后在另一个终端中启动节点,然后对本地服务器运行测试”,但这在自动化CI系统中显然毫无意义吗?

mocha.js node.js gitlab gitlab-ci gitlab-ci-runner

5
推荐指数
2
解决办法
5414
查看次数