# 通过 API 迁移内容在 3 个主题后挂起

**URL:** https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617
**Category:** Support
**Created:** [2020年二月14日 15:38 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617 "2020-02-14T15:38:59Z")
**Posts on this page:** 8
**Page:** 1

<div class="post-metadata">

### Author: ![Amethi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/amethi/32/88690_2.png) [@Amethi](https://meta.discourse.org/u/Amethi)
#### Post date: [2020年二月14日 15:38 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/1 "2020-02-14T15:38:59Z")

</div>

我有一些编辑内容正通过 API 迁移到 Discourse，并已搭建了一个全新的 Discourse 开发实例用于测试迁移过程。目前我能成功创建三个带有回复的主题，但在尝试创建第四个主题时，请求会挂起。

我原以为这是某种垃圾信息或速率限制配置问题，因此已逐一检查并禁用了所有看似会干预主题创建的设置，但问题依然存在。

**针对这种情况，是否有任何指导建议？**

由于我是在一个全新的 Discourse 实例上操作，目前没有任何成员，因此我的迁移程序会在需要时自动为主题和回复的作者创建用户账户。在生产环境中，这些账户将已存在。

**配置：**

 ![image](https://global.discourse-cdn.com/meta/original/3X/9/9/99222bf4bddb3a1d86d4861004a5edc4ada94ad5.png)

 ![image](https://global.discourse-cdn.com/meta/original/3X/c/e/ce5c9a0252ca12f52a2bd6e53b35cb323b96b0f4.png)

 ![image](https://global.discourse-cdn.com/meta/original/3X/8/2/823cc3d6b1296a6bad73bbb5fab4ee9af0ab4f4e.png)

 ![image](https://global.discourse-cdn.com/meta/original/3X/7/7/77c729207bf5e762a105c8820a4076ec59cc3196.png)

---

<div class="post-metadata">

### Author: ![Amethi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/amethi/32/88690_2.png) [@Amethi](https://meta.discourse.org/u/Amethi)
#### Post date: [2020年二月14日 15:44 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/2 "2020-02-14T15:44:01Z")

</div>

哦，现在我无法迁移任何新话题了。  
有没有办法完全关闭所有反垃圾功能？

---

<div class="post-metadata">

### Author: ![justin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/justin/32/157614_2.png) [@justin](https://meta.discourse.org/u/justin)
#### Post date: [2020年二月14日 16:34 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/3 "2020-02-14T16:34:13Z")

</div>

你尝试使用 API 而不是使用其中一个 [导入脚本](https://github.com/discourse/discourse/tree/master/script/import_scripts) 有什么原因吗？

---

<div class="post-metadata">

### Author: ![Amethi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/amethi/32/88690_2.png) [@Amethi](https://meta.discourse.org/u/Amethi)
#### Post date: [2020年二月14日 16:57 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/4 "2020-02-14T16:57:05Z")

</div>

老实说，我都不知道这些脚本的存在。

我的内容存储在自定义数据库中。幸运的是，我是一名开发者，所以编写一个 C# 程序来查询数据库并利用 API 创建主题和回复并不难。不过，直到 Discourse 的某些阻止功能生效之前，一切都很顺利 :-/

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [2020年二月14日 17:36 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/5 "2020-02-14T17:36:02Z")

</div>

> [@Amethi](#):
>
> 我可以创建三个带回复的主题，但在尝试创建第四个时，请求卡住了。

当请求卡住时，Discourse 是否返回了错误消息？

根据您收到的错误消息，您可能可以通过在 API 请求中添加 `skip_validation` 参数来解决问题。该参数应设置为 `true`。设置该参数后，Discourse 用于检查帖子是否符合站点设置中定义标准的大部分验证将被跳过。

---

<div class="post-metadata">

### Author: ![Amethi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/amethi/32/88690_2.png) [@Amethi](https://meta.discourse.org/u/Amethi)
#### Post date: [2020年二月14日 18:00 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/6 "2020-02-14T18:00:25Z")

</div>

据我所见，请求只是卡住了，不过我用来与 API 交互的包有一些日志功能。我会先试试那个，看看能否找出任何错误信息。

该包没有跳过验证的选项。我可能不得不修改它以添加该参数。

谢谢你的提示。

> **[GitHub - nikkilocke/DiscourseApi: C# Wrapper to the Discourse Api](https://github.com/nikkilocke/DiscourseApi)**
>
> C# Wrapper to the Discourse Api

---

<div class="post-metadata">

### Author: ![Amethi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/amethi/32/88690_2.png) [@Amethi](https://meta.discourse.org/u/Amethi)
#### Post date: [2020年二月14日 22:49 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/7 "2020-02-14T22:49:25Z")

</div>

为 POST 请求添加

> skip\_validations=true

参数后生效了。感谢 @simon！

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [2020年三月15日 23:00 UTC](https://meta.discourse.org/t/migrating-content-via-api-hangs-after-3-topics/141617/8 "2020-03-15T23:00:29Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
