I am an African American based in Beijing, but I travel to Shanghai on business often. There is a major difference between the two cities. In Beijing, you are stared at until it becomes uncomfortable and in Shanghai, no one really seems to notice. You may get a few stares from some people in Shanghai but they seem to know that it is not the best of manners to stare at someone for such a long time.
Beijing has a long way to go towards making foreigners from all countries and nationalities feel comfortable in its city. Shanghai, on the other hand, is fun and it makes you feel more comfortable. If you are a person of color seeking a good place to visit, Beijing is not the place to go. You will feel like an animal in the zoo.
So, save your money, and go to a part of China that seems to have a better handle on how to treat its visitors.