菜鸟教程小白 发表于 2022-12-11 20:45:47

ios:将数据发布到 Firestore 时出现问题


                                            <p><p>我正在尝试将数据发布到 Firebase。但是当我点击我的按钮时,什么也没有发生。既没有数据发送也没有任何异常发生。我尝试了很多方法,也尝试了新项目,但问题仍然存在。我已经尝试了 Firebase 网站上给出的测试代码,没有任何反应。 </p>

<p><strong>这是我的常量</strong></p>

<pre><code>let THOUGHTS_REF = &#34;thoughts&#34;

let CATEGORY = &#34;category&#34;

let NUM_COMMENTS = &#34;numComments&#34;

let NUM_LIKES = &#34;numLikes&#34;

let THOUGHT_TXT = &#34;thoughtTxt&#34;

let TIMESTAMP = &#34;timestamp&#34;

let USERNAME = &#34;username&#34;
</code></pre>

<p>**这里是 ThoughtCategory 的枚举 **</p>

<pre><code>enum ThoughtCategory: String {

    case serious = &#34;serious&#34;
    case funny = &#34;funny&#34;
    case crazy = &#34;crazy&#34;
    case popular = &#34;popular&#34;

}
</code></pre>

<p><strong>这是 VIEW 背后的代码:</strong></p>

<pre><code>import UIKit
import Firebase
import FirebaseFirestore

class AddThoughtVC: UIViewController, UITextViewDelegate {


    //Outlets
    @IBOutlet weak var segmentControl: UISegmentedControl!
    @IBOutlet weak var usernameTxt: UITextField!
    @IBOutlet weak var thoughtTxt: UITextView!
    @IBOutlet weak var postBtn: UIButton!

    //Variables
    private var categorySelected = ThoughtCategory.funny.rawValue


    override func viewDidLoad() {
      super.viewDidLoad()
      thoughtTxt.delegate = self

      postBtn.layer.cornerRadius = 4
      thoughtTxt.layer.cornerRadius = 4
      thoughtTxt.text = &#34;My random thought...&#34;
      thoughtTxt.textColor = UIColor.lightGray
    }

    func textViewDidBeginEditing(_ textView: UITextView) {
      textView.text = &#34;&#34;
      textView.textColor = UIColor.darkGray
    }

    @IBAction func categoryChanged(_ sender: Any) {

      switch segmentControl.selectedSegmentIndex {
      case 0:
            categorySelected = ThoughtCategory.funny.rawValue
      case 1:
            categorySelected = ThoughtCategory.serious.rawValue
      default:
            categorySelected = ThoughtCategory.crazy.rawValue
      }

    }

    @IBAction func postBtnTapped(_ sender: Any) {

      guard let username = usernameTxt.text else { return }

            Firestore.firestore().collection(THOUGHTS_REF).addDocument(data: [

            CATEGORY : categorySelected,
            NUM_COMMENTS : 0,
            NUM_LIKES : 0,
            THOUGHT_TXT : thoughtTxt.text,
            TIMESTAMP : FieldValue.serverTimestamp(),
            USERNAME : username


      ]) { (err) in
            if let err = err {
                debugPrint(&#34;Error adding document: \(err)&#34;)
            } else {
                self.navigationController?.popViewController(animated: true)
            }
      }

    }

}
</code></pre>

<p><strong>这是日志文件中的错误</strong></p>

<blockquote>
<p>2018-10-30 22:58:50.091529+0500 RNDM
nw_protocol_boringssl_get_output_frames(1301)
get output frames failed, state 8196</p>

<p>2018-10-30 22:58:50.091719+0500 RNDM
nw_protocol_boringssl_get_output_frames(1301)
get output frames failed, state 8196</p>

<p>2018-10-30 22:58:50.092369+0500 RNDM TIC Read Status
: 1:57 2018-10-30 22:58:50.092511+0500 RNDM TIC Read
Status : 1:57</p>
</blockquote></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><pre><code>Check Firestore rules
rules_version = &#39;1&#39;;

service cloud.firestore {
match /databases/{database}/documents {
    match /{document=**} {
      allow read, write;
    }
}
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios:将数据发布到 Firestore 时出现问题,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/53070057/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/53070057/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios:将数据发布到 Firestore 时出现问题