使用Swift 3设置Parse-Server
首先,我只是刚刚开始使用Parse-Server,而我一生中从未使用过(或真正听说过)Parse.com。 但是,我确实具有NodeJS和MongoDB的经验。 我的目标读者是那些只想从本地托管的Parse-Server上获取一些数据的人,但是,只要您正确替换了URL,它也可以与托管在任何地方的Parse-Server一起使用。
好的,进入实际设置,转到https://github.com/parse-community/parse-server,然后按照说明将Parse安装到您的系统上。 只要您安装了NodeJS和MongoDB,这应该非常简单,如果您不这样做的话,请转至https://nodejs.org/en/download/和https://www.mongodb.com/download-center并按照他们的指示为您的计算机安装软件。 一旦完成,您将要运行parse-server命令“ parse-server-appId APP_ID-masterKey MASTER_KEY-databaseURI mongodb:// localhost / test” ,据我所知, APP_ID , MASTER_KEY和/ mongodb:// localhost / test的 测试位可以是您想要的任何位。 按下回车键运行该命令,祝贺您,Parse-Server已启动并正在运行!
您可能还需要安装Parse-Dashboard,我假设您确实想使用它,并且说实话我不知道为什么不这样做,这使工作变得更加轻松。 为此,请转到https://github.com/parse-community/parse-dashboard并按照那里的说明进行操作,设置非常简单,只需确保您的appId , masterKey和serverURL (您的serverURL将其输出作为parse-server命令的一部分)与您的Parse-Server匹配,则可以将appName设置为所需的任何名称。 一旦您将其运行到该网址,即会通过命令获得该网址(我的网址是http://0.0.0.0:4040/ )。 您应该看到一个如下所示的界面:
单击您的应用程序名称,然后单击左侧的“创建课程”按钮。 我们将创建一个名为TestClass的类来容纳一些TestObjects。 如下图所示,填写弹出窗口,然后单击“创建类”
下一步,单击“添加新列” ,其显示在屏幕顶部,并将其称为“ object_name” ,如下所示。
现在,您可以单击“添加一行” ,双击“ object_name”字段,然后根据需要命名为“ obj1” 。 您应该最终得到如下所示的内容。
接下来是Swift。
对于Swift而言,我们将使用CocoaPods安装所有内容,以防万一您在转到https://cocoapods.org并向下滚动到Install之前未使用过它们,则需要复制命令并在其中运行终端,则应安装CocoaPods。
接下来,您将要创建一个新的Xcode项目,它将是Single View Application,因此请在iOS下选择该项目,然后单击next。
随意命名项目并创建它,然后退出Xcode并在终端中打开Xcode项目。 运行“ ls”应显示类似下面的内容。
下一步运行“ pod init”创建一个PodFile,再次运行“ ls”应显示已创建一个名为PodFile的新文件。
现在,您可以进入所需的任何文本编辑器,然后将“ pod’Parse ‘”添加到PodFile中,如下所示:
保存文件并运行“ pod install” 。 恭喜,您刚刚将Parse添加到了项目中。 从现在开始,我们需要使用.xcworkspace文件,因此请在Xcode中找到并打开该文件。
展开与应用程序名称相同的文件夹,然后打开情节提要,因此您需要:
添加一个标签并将其连接到您的视图控制器,我将其命名为“ textLabel”,然后转到AppDelegate.swift,并在顶部的“ import UIKit”下添加:
导入解析
进口螺栓
如果出现错误,则可能需要使用Command + B来构建项目。 在应用程序didFinishLaunchingWithOptions位下,添加以下代码:
let config = ParseClientConfiguration {
$ 0.applicationId =“ APP_ID”
$ 0.server =“ http:// localhost:1337 / parse ”
}
Parse.initialize(with:config)
“ $ 0.applicationId”应包含您的appId, “ $ 0.server”应包含您的Parse-Server服务器的地址。
这将告诉您的应用程序在哪里查找数据。
接下来,您将需要移至ViewController.swift文件,并像之前一样再次导入Parse和Bolts。
在“ ViewDidLoad()”函数中,通过键入以下内容创建一个新查询:
let query = PFQuery(className:“ TestClass”)
我们可以通过键入执行查询
query.findObjectsInBackground(block:{
(objectArr,err)->无效
})
“ objectArr”包含“ TestClass ”中的每个对象,在本教程中,我们仅抓取第一个对象,并将其object_name值输出到我们之前创建的标签中。 为此,我们将创建一个变量来保存从服务器检索到的object_name。 在“((objectArr,err)-> Void in”)之后添加以下内容:
让obj_name = objectArr?[0] .value(forKey:“ object_name”)为! 串
然后,通过键入以下内容,将我们先前创建的文本标签的文本设置为该String:
self.textLabel.text = obj_name;
您的ViewDidLoad()函数现在应包含以下代码:
let query = PFQuery(className:“ TestClass”)
query.findObjectsInBackground(block:{
(objectArr,err)->无效
让obj_name = objectArr?[0] .value(forKey:“ object_name”)为! 串
self.textLabel.text = obj_name;
})
现在,如果出现以下错误,您可以运行该应用程序以查看其是否有效:
[错误]:由于“应用程序传输安全性”策略要求使用安全连接,因此无法加载资源。 (代码:100,版本:1.14.4)
那么您需要进入info.plist,然后在“信息属性列表”下添加“应用程序传输安全设置” ,然后在其下添加“允许任意加载”并将其设置为“是”。
就是这样,正如您所看到的,我将“ obj1”作为标签文本,这正是我在Parse-Dashboard中输入的内容。
您可以使用本文中的原理来进行Parse的加载。 如果您希望我在学习过程中写更多有关Parse的信息,请告诉我。
谢谢阅读!
- 在批准之前testingFacebook集成
- 如何在spritekit 中按下主页button时暂停并重新启动NSTimer.scheduledTimerWithTimeInterval?
- 如何在GMSMapView上实现GMSMarker拖放?
- Google Analytics iOS SDK [GAIReachabilityChecker reachabilityFlagsChanged:crash
- WatchOS 3 WKApplicationRefreshBackgroundTask didReceiveChallenge
- 如何在Xcodedebugging窗口中更改浮点数和浮点数的显示格式?
- 在Xcode中添加Firebase时如何解决“重复的符号”
- 收到NSNotification后导航到特定的UIViewController
- 点击UITextField时,移动键盘上方的UIButton