プロジェクト

全般

プロフィール

Backport(バックポート) #2248

[api] 取得したアクティビティのリンク先URLが streamUrl に格納されている

Youichi Kimura12年以上前に追加. 12年以上前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
-
対象バージョン:
開始日:
2011-06-21
期日:
進捗率:

100%


説明

Overview (現象)

下記のように activity_data.uri にURIが設定されたアクティビティをAPIで取得した場合に、URLが url フィールドではなく streamUrl フィールドに格納されてしまう。

sqlite> select * from activity_data;
id|member_id|in_reply_to_activity_id|body|uri|public_flag|is_pc|is_mobile|source|source_uri|foreign_table|foreign_id|template|template_param|created_at|updated_at
1|1||test|http://sns.localhost/|1|1|1|||||||2011-06-02 21:29:57|2011-06-02 21:29:57

APIで取得されるアクティビティ:
(※: URLの値が壊れている問題については #2231 で取り扱います)

{
  "id": "1",
  "userId": "1",
  "title": "test",
  "postedTime": "2011-06-02T21:29:57+09:00",
  "streamUrl": "http:\/\/sns.localhost\/sqlite\/http%3A\/" 
}

Causes (原因)

opJsonDbOpensocialService::getActivities() メソッド内で、下記のように activity_data.uri の値を streamUrl へ代入している箇所がある。

if ($activity->getUri())
{
  $a['streamUrl'] = app_url_for('pc_frontend', $activity->getUri(), true);
}

Way to fix (修正内容)

activity_data.uri の値の代入先を streamUrl から url に変更する。

diff --git a/lib/util/opJsonDbOpensocialService.class.php b/lib/util/opJsonDbOpensocialService.class.php
index 398ff69..0f0d61f 100644
--- a/lib/util/opJsonDbOpensocialService.class.php
+++ b/lib/util/opJsonDbOpensocialService.class.php
@@ -171,7 +171,7 @@ class opJsonDbOpensocialService implements ActivityService, PersonService, AppDa

       if ($activity->getUri())
       {
-        $a['streamUrl'] = app_url_for('pc_frontend', $activity->getUri(), true);
+        $a['url'] = app_url_for('pc_frontend', $activity->getUri(), true);
       }
       if ($activity->getForeignTable() == Doctrine::getTable('MemberApplication')->getTableName())
       {

関連するチケット

関連している opOpenSocialPlugin - Bug(バグ) #2232: [api] 取得したアクティビティのリンク先URLが streamUrl に格納されている Fixed(完了) 2011-06-21

関係しているリビジョン

リビジョン d38b730b (差分)
Youichi Kimura12年以上前に追加

fix wrong field name on Activity service (fixes #2248, BP from #2232)

(cherry picked from commit 5f4d23ebc648ccc1b1a668f442ef27048179377b)

履歴

#1 Youichi Kimura12年以上前に更新

  • ステータスNew(新規) から Pending Review(レビュー待ち) に変更
  • 進捗率0 から 50 に変更

更新履歴 d38b730b79ad8df2d0166b4e5cd2b5e1079afd9b で適用されました。

#2 Shogo Kawahara12年以上前に更新

  • ステータスPending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
  • 進捗率50 から 70 に変更

#3 Shogo Kawahara12年以上前に更新

  • ステータスPending Testing(テスト待ち) から Fixed(完了) に変更
  • 進捗率70 から 100 に変更

他の形式にエクスポート: Atom PDF