Clean the fish, remove the gills and scales. Cut slits on the skin to absorb more of the seasonings. Combine garlic powder, onion powder, salt, and red chili pepper flakes, rub the fish with seasonings outside and inside.
Dredge the fish into flour. Heat a wide deep pan with oil (enough oil for deep frying). Make sure the oil is hot enough (to check if the oil is hot, dip the wooden spoon into it and when you see bubbles on the tip of the wooden spoon, the oil is ready).
Carefully slide the whole fish into the hot oil (be careful with oil splatters). Cook for 3 minutes on each side or until golden brown. Carefully flip the fish using a spider ladle and a wooden spoon for even browning. Set aside.
Make the sauce by combining all the sauce ingredients. Dissolve the cornstarch in pineapple juice. Heat a clean pan with oil, add the onion, garlic, and ginger, saute for a minute or until aromatic.
Add the rest of the veggies except green onions. Saute for a minute or until the veggies are slightly tender (but still a bit crispy). Add the sauce and the pineapple mixture, simmer, keep stirring until the sauce thickened.
Pour the sauce over the cooked fish. Sprinkle green onions, serve with steamed rice.