Let us not ignore some political calculations here as well. First, given the recent chemical attack, there's going to be a lot of sympathy for the action against Syria. So Trump looks (1) like he cares about those who died, and (2) really tough - which his "MAGA" base is probably going to eat up. Also, presidential approval ratings tend to go up after this kind of thing. (As I recall, Bill Clinton ordered an attack against Iraq at the height of the impeachment debate, and managed to stall the House's vote to impeach for a few days at least because the feeling was you couldn't impeach a president who was commanding in a time of battle!) Second, Trump's big problem recently has been the so-called "Russia connection," and the accusation that he is too close to or even influenced by Russia. This was an action against a Russian ally, and Tillerson got to say some pretty harsh things about Putin's Russia - "complicit or incompetent," I believe were his words - and this morning the Kremlin is saying some pretty harsh things about the US. A body blow to the "influenced by Russia" or "in Putin's pocket" argument. Third, the attack came as the president of China is in Florida. Undoubtedly, one of the issues discussed was North Korea - thus, the message: "see, we're willing to act alone when we have to." As for the Xi visit, having him at Mar-a-Lago was actually an interesting political move - at least potentially. Going to the White House is routine, and a reminder of the US political structure and the limits it places on the president. At Mar-a-Lago, Xi is right in the Donald's personal fiefdom, where everyone defers to him and his word is law.
Lots of interesting stuff in the last 24-48 hours.