[英]How to access REST API endpoints made by ExpressJS in a C# code
[英]How to access REST api endpoints for Bluemix
我關注了IBM Blumix上的文章“使用PHP和MySQL在IBM Bluemix上構建和部署REST API”。 http://www.ibm.com/developerworks/library/wa-deployrest-app/index.html
但是它從沒有說過如何訪問實際的端點(我想我使用的是正確的詞)。 它說調用“ / v1 / products”以列出所有產品。 我對bluemix還是很陌生,並且不太清楚要將“ / v1 / products”附加到什么內容。 我應該附加它以制作“> projectName <.mybluemix.net / v1 / products”嗎? 這是行不通的。 我收到錯誤消息
“未找到
在此服務器上找不到請求的URL / v1 / products。”
干杯
如果您已經閱讀了developerWorks文章,那么您應該能夠通過執行GET調用(即僅將其添加到Web瀏覽器)來訪問該URL:
your_app_route.mybluemix.net\\v1\\products
或者,如果您部署到英國(eu-gb)地區,則該網址為:
your_app_route.eu-gb.mybluemix.net\\v1\\products
然后將.xml或.json附加到該URL,以獲得所需的響應類型。 端點是在您的應用程序代碼中定義的,並且通過閱讀developerWorks文章,此時已在PHP代碼中對其進行了設置:
$app->path('v1', function($request) use ($app) {
$app->path('products', function($request) use ($app) {
// GET /v1/products[.xml|.json]
// list all products
$app->get(function() use ($app) {
$products = Product::all();
// handle requests for XML content
$app->format('xml', function($request) use($app, $products) {
return $app->response(200, convert_array_to_xml($products->toArray()))
->header('Content-Type', 'application/xml');
});
// handle requests for JSON content
$app->format('json', function($request) use($app, $products) {
return $products->toArray();
});
your_app_route
是執行cf push
命令時可以定義的路由/主機名,如果未顯式設置此路由( -n
選項或--random-route
選項),則它將設置為您的名稱。 Bluemix應用程序。 您可以通過查看您的應用程序的Bluemix UI控制台(應該在頁面頂部)或查看cf push
命令的結尾(其中說urls:
)來查看urls:
從錯誤中您會得到聽起來好像應用程序正在啟動,但是Web服務器未將請求定向到Bullet模塊。 您可能要檢查步驟8(b)是否已正確完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.