iT邦幫忙

0

PHP API問題 救命

  • 分享至 

  • xImage

各位大大們好,小弟是剛進入軟體業的菜鳥,最近遇到一個問題
需要寫一個API,去介接A、B 兩個不同公司做的系統,目前的狀況是

我們這邊有兩個系統整合平台: 平台(新),平台(舊)
平台(舊)裡面有一個網路電話系統要移到平台(新)裡面,此系統是B公司做的,系統的主機和DB都在B公司

必須要先登入平台(舊),才可以點連結到網路電話系統
然後我們這邊的主機有兩個資料庫: DB(新),DB(舊) 使用PostgreSQL
DB(舊)裡面的TABLE,大多DB(新)裡面也有只是名字不一樣,但有些TABLE沒有

目前平台(新)是使用 DB(新),平台(舊)是使用DB(舊)
而要進入網路電話系統,B公司說需要POST五種資料才能進入系統
不然都會轉到平台(舊)首頁做登入的動作,但其中一個資料只在DB(舊)裡有

目前的想法是做一個登入的頁面,登入後蒐集網路電話系統要的資料用POST輸出再轉導至網路電話系統的網站

想請問這樣的方向是否正確? 有什麼方法可以測試資料是否有傳送過去?
使用的語言是PHP 勞請各位大神指教! 小弟無限感激!

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

3
海綿寶寶
iT邦大神 1 級 ‧ 2021-12-16 09:14:25

一套系統要更換平台最簡單的做法就是
1.把「程式」和「資料庫」都百分之百照抄複製到新平台
2.更改設定(eg.主機IP、資料庫連線...)
3.執行起來有問題再來除錯

從舊平台搬到新平台的優先順序該是
讓原來的程式/資料庫可以正常執行
而不是
要靠寫全新的程式才能讓原來的程式/資料庫可以正常執行

像貴公司這種做法
DB(舊)裡面的TABLE,大多DB(新)裡面也有只是名字不一樣,但有些TABLE沒有
我沒見過
不知如何回答
/images/emoticon/emoticon06.gif

h9919136 iT邦新手 5 級 ‧ 2021-12-16 11:14:57 檢舉

感謝大大回應,因為小弟是駐點在公務機關,這邊很多系統都是外包給不同廠商做的,平台上還有很多系統,可是那些廠商都有提供API可以接到新平台上,唯獨這個網路電話系統沒有提供,變成要自己做這樣。

因為舊平台和舊DB將來都會停掉,但平台和網路電話系統都是別間公司做的,我也看不到程式碼!/images/emoticon/emoticon02.gif
所以我沒辦法複製到新平台。

我還是不懂你的問題

那些廠商都有提供API可以接到新平台上

既然要加程式,不是你就是網路電話系統廠商
看起來也不是廠商
你就參考別的廠商提供的API的做法
自己寫串接的程式了

我只能 祝你好運
願原力與你同在

2

一般做法有兩種。

1.在新的平台上,另外建一個可以連結舊資料庫的方式。從中獲得沒有的資料。
2.如果第1點做不到。那就是在舊平台上,建立一個新的API。來請求獲得資料並轉入電話系統。

只是,你說的很多。但都沒有重點。實在很難評估。
因為其一,不清楚是否可以另外開發。
其二,其為WEB還是SERVER應用。也不清楚。

最後這個問題「有什麼方法可以測試資料是否有傳送過去?」
正常來說。如果是WEB的話。理論上你會獲得最終HTML頁。可以用CURL或是對應的FROM請求。
來查看回應頁是什麼來判斷。
但如果是SERVER型態的。
就只能看當初設定的人,是否有做任何回應了。沒有的話其實也沒辦法知道的。
但一般來說不太可能沒有就是了。

我要發表回答

立即登入回答