In a large bowl, whisk together the flour, cornmeal, sugar, baking powder, salt, garlic powder, and onion powder.
In a separate bowl, combine the milk and egg, then mix into the dry ingredients until just combined. The batter should be thick.
If using cheese, cut the hot dogs in half and insert a skewer into each half. Dip the hot dogs into the batter, ensuring they are fully coated.
Roll the battered hot dogs in panko breadcrumbs to create a crispy coating.
Heat vegetable oil in a deep pot or fryer to 350°F. Carefully place the corn dogs in the hot oil, a few at a time, and fry for about 4-5 minutes or until golden brown.
Remove the corn dogs from the oil and drain on paper towels. Serve hot with ketchup and mustard if desired.